<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<title>src/vfs/ftpfs/ftpfs.c</title>
<meta name='robots' content='noindex,nofollow' />
<meta name='generator' content='GLOBAL-6.5.7' />
<meta http-equiv='Content-Style-Type' content='text/css' />
<link rel='stylesheet' type='text/css' href='../style.css' />
</head>
<body>
<!-- beginning of fixed guide -->
<div id='guide'><ul>
<li><a href='#L278'><img class='icon' src='../icons/first.png' alt='[^]' /></a></li>
<li><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[v]' /></a></li>
<li><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a></li>
<li><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a></li>
<li><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a></li>
<li><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a></li>
<li class='standout'><span><a href='../files/src.html'>src</a>/<a href='../files/src--vfs.html'>vfs</a>/<a href='../files/src--vfs--ftpfs.html'>ftpfs</a>/ftpfs.c</span></li>
</ul></div>
<!-- end of fixed guide -->
<a id='TOP' name='TOP'></a><h2 class='header'><a href='../mains.html'>root</a>/<a href='../files/src.html'>src</a>/<a href='../files/src--vfs.html'>vfs</a>/<a href='../files/src--vfs--ftpfs.html'>ftpfs</a>/ftpfs.c</h2>
<em class='comment'>/* <img class='icon' src='../icons/n_left.png' alt='[previous]' /><img class='icon' src='../icons/n_right.png' alt='[next]' /><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><img class='icon' src='../icons/n_top.png' alt='[top]' /><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<hr />
<h2 class='header'>DEFINITIONS</h2>
This source file includes following definitions.
<ol>
<li><a href='#L278' title='Defined at 278.'>ftpfs_set_blksize</a></li>
<li><a href='#L289' title='Defined at 289.'>ftpfs_default_stat</a></li>
<li><a href='#L303' title='Defined at 303.'>ftpfs_translate_path</a></li>
<li><a href='#L352' title='Defined at 352.'>ftpfs_correct_url_parameters</a></li>
<li><a href='#L391' title='Defined at 391.'>ftpfs_get_reply</a></li>
<li><a href='#L444' title='Defined at 444.'>ftpfs_reconnect</a></li>
<li><a href='#L477' title='Defined at 477.'>G_GNUC_PRINTF</a></li>
<li><a href='#L566' title='Defined at 566.'>ftpfs_new_archive</a></li>
<li><a href='#L584' title='Defined at 584.'>ftpfs_free_archive</a></li>
<li><a href='#L600' title='Defined at 600.'>ftpfs_changetype</a></li>
<li><a href='#L615' title='Defined at 615.'>ftpfs_login_server</a></li>
<li><a href='#L738' title='Defined at 738.'>ftpfs_load_no_proxy_list</a></li>
<li><a href='#L783' title='Defined at 783.'>ftpfs_check_proxy</a></li>
<li><a href='#L830' title='Defined at 830.'>ftpfs_get_proxy_host_and_port</a></li>
<li><a href='#L844' title='Defined at 844.'>ftpfs_open_socket</a></li>
<li><a href='#L956' title='Defined at 956.'>ftpfs_open_archive_int</a></li>
<li><a href='#L1017' title='Defined at 1017.'>ftpfs_open_archive</a></li>
<li><a href='#L1034' title='Defined at 1034.'>ftpfs_archive_same</a></li>
<li><a href='#L1057' title='Defined at 1057.'>ftpfs_get_current_directory</a></li>
<li><a href='#L1106' title='Defined at 1106.'>ftpfs_setup_passive_pasv</a></li>
<li><a href='#L1144' title='Defined at 1144.'>ftpfs_setup_passive_epsv</a></li>
<li><a href='#L1187' title='Defined at 1187.'>ftpfs_setup_passive</a></li>
<li><a href='#L1209' title='Defined at 1209.'>ftpfs_setup_active</a></li>
<li><a href='#L1279' title='Defined at 1279.'>ftpfs_init_data_socket</a></li>
<li><a href='#L1324' title='Defined at 1324.'>ftpfs_initconn</a></li>
<li><a href='#L1384' title='Defined at 1384.'>ftpfs_open_data_connection</a></li>
<li><a href='#L1457' title='Defined at 1457.'>ftpfs_linear_abort</a></li>
<li><a href='#L1525' title='Defined at 1525.'>resolve_symlink_without_ls_options</a></li>
<li><a href='#L1605' title='Defined at 1605.'>resolve_symlink_with_ls_options</a></li>
<li><a href='#L1712' title='Defined at 1712.'>resolve_symlink</a></li>
<li><a href='#L1726' title='Defined at 1726.'>ftpfs_dir_load</a></li>
<li><a href='#L1865' title='Defined at 1865.'>ftpfs_file_store</a></li>
<li><a href='#L1972' title='Defined at 1972.'>ftpfs_linear_start</a></li>
<li><a href='#L1995' title='Defined at 1995.'>ftpfs_linear_read</a></li>
<li><a href='#L2025' title='Defined at 2025.'>ftpfs_linear_close</a></li>
<li><a href='#L2034' title='Defined at 2034.'>ftpfs_ctl</a></li>
<li><a href='#L2061' title='Defined at 2061.'>ftpfs_send_command</a></li>
<li><a href='#L2095' title='Defined at 2095.'>ftpfs_stat</a></li>
<li><a href='#L2107' title='Defined at 2107.'>ftpfs_lstat</a></li>
<li><a href='#L2119' title='Defined at 2119.'>ftpfs_fstat</a></li>
<li><a href='#L2131' title='Defined at 2131.'>ftpfs_chmod</a></li>
<li><a href='#L2144' title='Defined at 2144.'>ftpfs_chown</a></li>
<li><a href='#L2166' title='Defined at 2166.'>ftpfs_unlink</a></li>
<li><a href='#L2175' title='Defined at 2175.'>ftpfs_is_same_dir</a></li>
<li><a href='#L2186' title='Defined at 2186.'>ftpfs_chdir_internal</a></li>
<li><a href='#L2213' title='Defined at 2213.'>ftpfs_rename</a></li>
<li><a href='#L2222' title='Defined at 2222.'>ftpfs_mkdir</a></li>
<li><a href='#L2232' title='Defined at 2232.'>ftpfs_rmdir</a></li>
<li><a href='#L2240' title='Defined at 2240.'>ftpfs_fh_new</a></li>
<li><a href='#L2254' title='Defined at 2254.'>ftpfs_fh_open</a></li>
<li><a href='#L2332' title='Defined at 2332.'>ftpfs_fh_close</a></li>
<li><a href='#L2356' title='Defined at 2356.'>ftpfs_done</a></li>
<li><a href='#L2369' title='Defined at 2369.'>ftpfs_fill_names</a></li>
<li><a href='#L2388' title='Defined at 2388.'>ftpfs_netrc_next</a></li>
<li><a href='#L2440' title='Defined at 2440.'>ftpfs_netrc_bad_mode</a></li>
<li><a href='#L2467' title='Defined at 2467.'>ftpfs_find_machine</a></li>
<li><a href='#L2535' title='Defined at 2535.'>ftpfs_netrc_lookup</a></li>
<li><a href='#L2677' title='Defined at 2677.'>ftpfs_init_passwd</a></li>
<li><a href='#L2698' title='Defined at 2698.'>vfs_init_ftpfs</a></li>
</ol>
<hr />
<pre>
<a id='L1' name='L1'></a>   1 <em class='comment'>/*</em>
<a id='L2' name='L2'></a>   2 <em class='comment'>   Virtual File System: FTP file system.</em>
<a id='L3' name='L3'></a>   3 <em class='comment'></em>
<a id='L4' name='L4'></a>   4 <em class='comment'>   Copyright (C) 1995-2020</em>
<a id='L5' name='L5'></a>   5 <em class='comment'>   Free Software Foundation, Inc.</em>
<a id='L6' name='L6'></a>   6 <em class='comment'></em>
<a id='L7' name='L7'></a>   7 <em class='comment'>   Written by:</em>
<a id='L8' name='L8'></a>   8 <em class='comment'>   Ching Hui, 1995</em>
<a id='L9' name='L9'></a>   9 <em class='comment'>   Jakub Jelinek, 1995</em>
<a id='L10' name='L10'></a>  10 <em class='comment'>   Miguel de Icaza, 1995, 1996, 1997</em>
<a id='L11' name='L11'></a>  11 <em class='comment'>   Norbert Warmuth, 1997</em>
<a id='L12' name='L12'></a>  12 <em class='comment'>   Pavel Machek, 1998</em>
<a id='L13' name='L13'></a>  13 <em class='comment'>   Yury V. Zaytsev, 2010</em>
<a id='L14' name='L14'></a>  14 <em class='comment'>   Slava Zanko &lt;slavazanko@gmail.com&gt;, 2010, 2013</em>
<a id='L15' name='L15'></a>  15 <em class='comment'>   Andrew Borodin &lt;aborodin@vmail.ru&gt;, 2010</em>
<a id='L16' name='L16'></a>  16 <em class='comment'></em>
<a id='L17' name='L17'></a>  17 <em class='comment'>   This file is part of the Midnight Commander.</em>
<a id='L18' name='L18'></a>  18 <em class='comment'></em>
<a id='L19' name='L19'></a>  19 <em class='comment'>   The Midnight Commander is free software: you can redistribute it</em>
<a id='L20' name='L20'></a>  20 <em class='comment'>   and/or modify it under the terms of the GNU General Public License as</em>
<a id='L21' name='L21'></a>  21 <em class='comment'>   published by the Free Software Foundation, either version 3 of the License,</em>
<a id='L22' name='L22'></a>  22 <em class='comment'>   or (at your option) any later version.</em>
<a id='L23' name='L23'></a>  23 <em class='comment'></em>
<a id='L24' name='L24'></a>  24 <em class='comment'>   The Midnight Commander is distributed in the hope that it will be useful,</em>
<a id='L25' name='L25'></a>  25 <em class='comment'>   but WITHOUT ANY WARRANTY; without even the implied warranty of</em>
<a id='L26' name='L26'></a>  26 <em class='comment'>   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</em>
<a id='L27' name='L27'></a>  27 <em class='comment'>   GNU General Public License for more details.</em>
<a id='L28' name='L28'></a>  28 <em class='comment'></em>
<a id='L29' name='L29'></a>  29 <em class='comment'>   You should have received a copy of the GNU General Public License</em>
<a id='L30' name='L30'></a>  30 <em class='comment'>   along with this program.  If not, see &lt;http://www.gnu.org/licenses/&gt;.</em>
<a id='L31' name='L31'></a>  31 <em class='comment'> */</em>
<a id='L32' name='L32'></a>  32 
<a id='L33' name='L33'></a>  33 <em class='comment'>/**</em>
<a id='L34' name='L34'></a>  34 <em class='comment'> * \file</em>
<a id='L35' name='L35'></a>  35 <em class='comment'> * \brief Source: Virtual File System: FTP file system</em>
<a id='L36' name='L36'></a>  36 <em class='comment'> * \author Ching Hui</em>
<a id='L37' name='L37'></a>  37 <em class='comment'> * \author Jakub Jelinek</em>
<a id='L38' name='L38'></a>  38 <em class='comment'> * \author Miguel de Icaza</em>
<a id='L39' name='L39'></a>  39 <em class='comment'> * \author Norbert Warmuth</em>
<a id='L40' name='L40'></a>  40 <em class='comment'> * \author Pavel Machek</em>
<a id='L41' name='L41'></a>  41 <em class='comment'> * \date 1995, 1997, 1998</em>
<a id='L42' name='L42'></a>  42 <em class='comment'> *</em>
<a id='L43' name='L43'></a>  43 <em class='comment'> * \todo</em>
<a id='L44' name='L44'></a>  44 <em class='comment'>- make it more robust - all the connects etc. should handle EADDRINUSE and</em>
<a id='L45' name='L45'></a>  45 <em class='comment'>  ERETRY (have I spelled these names correctly?)</em>
<a id='L46' name='L46'></a>  46 <em class='comment'>- make the user able to flush a connection - all the caches will get empty</em>
<a id='L47' name='L47'></a>  47 <em class='comment'>  etc., (tarfs as well), we should give there a user selectable timeout</em>
<a id='L48' name='L48'></a>  48 <em class='comment'>  and assign a key sequence.</em>
<a id='L49' name='L49'></a>  49 <em class='comment'>- use hash table instead of linklist to cache ftpfs directory.</em>
<a id='L50' name='L50'></a>  50 <em class='comment'></em>
<a id='L51' name='L51'></a>  51 <em class='comment'>What to do with this?</em>
<a id='L52' name='L52'></a>  52 <em class='comment'></em>
<a id='L53' name='L53'></a>  53 <em class='comment'></em>
<a id='L54' name='L54'></a>  54 <em class='comment'>     * NOTE: Usage of tildes is deprecated, consider:</em>
<a id='L55' name='L55'></a>  55 <em class='comment'>     * \verbatim</em>
<a id='L56' name='L56'></a>  56 <em class='comment'>         cd ftp//:pavel@hobit</em>
<a id='L57' name='L57'></a>  57 <em class='comment'>         cd ~</em>
<a id='L58' name='L58'></a>  58 <em class='comment'>       \endverbatim</em>
<a id='L59' name='L59'></a>  59 <em class='comment'>     * And now: what do I want to do? Do I want to go to /home/pavel or to</em>
<a id='L60' name='L60'></a>  60 <em class='comment'>     * ftp://hobit/home/pavel? I think first has better sense...</em>
<a id='L61' name='L61'></a>  61 <em class='comment'>     *</em>
<a id='L62' name='L62'></a>  62 <em class='comment'>    \verbatim</em>
<a id='L63' name='L63'></a>  63 <em class='comment'>    {</em>
<a id='L64' name='L64'></a>  64 <em class='comment'>        int f = !strcmp( remote_path, "/~" );</em>
<a id='L65' name='L65'></a>  65 <em class='comment'>        if (f || !strncmp( remote_path, "/~/", 3 )) {</em>
<a id='L66' name='L66'></a>  66 <em class='comment'>            char *s;</em>
<a id='L67' name='L67'></a>  67 <em class='comment'>            s = mc_build_filename ( qhome (*bucket), remote_path +3-f, (char *) NULL );</em>
<a id='L68' name='L68'></a>  68 <em class='comment'>            g_free (remote_path);</em>
<a id='L69' name='L69'></a>  69 <em class='comment'>            remote_path = s;</em>
<a id='L70' name='L70'></a>  70 <em class='comment'>        }</em>
<a id='L71' name='L71'></a>  71 <em class='comment'>    }</em>
<a id='L72' name='L72'></a>  72 <em class='comment'>    \endverbatim</em>
<a id='L73' name='L73'></a>  73 <em class='comment'> */</em>
<a id='L74' name='L74'></a>  74 
<a id='L75' name='L75'></a>  75 <em class='comment'>/* \todo Fix: Namespace pollution: horrible */</em>
<a id='L76' name='L76'></a>  76 
<a id='L77' name='L77'></a>  77 <em class='sharp'>#include</em> &lt;config.h&gt;
<a id='L78' name='L78'></a>  78 <em class='sharp'>#include</em> &lt;stdio.h&gt;              <em class='comment'>/* sscanf() */</em>
<a id='L79' name='L79'></a>  79 <em class='sharp'>#include</em> &lt;stdlib.h&gt;             <em class='comment'>/* atoi() */</em>
<a id='L80' name='L80'></a>  80 <em class='sharp'>#include</em> &lt;sys/types.h&gt;          <em class='comment'>/* POSIX-required by sys/socket.h and netdb.h */</em>
<a id='L81' name='L81'></a>  81 <em class='sharp'>#include</em> &lt;netdb.h&gt;              <em class='comment'>/* struct hostent */</em>
<a id='L82' name='L82'></a>  82 <em class='sharp'>#include</em> &lt;sys/socket.h&gt;         <em class='comment'>/* AF_INET */</em>
<a id='L83' name='L83'></a>  83 <em class='sharp'>#include</em> &lt;netinet/in.h&gt;         <em class='comment'>/* struct in_addr */</em>
<a id='L84' name='L84'></a>  84 <em class='sharp'>#ifdef</em> <a href='../Y/HAVE_ARPA_INET_H.html' title='Multiple used in 2 places.'>HAVE_ARPA_INET_H</a>
<a id='L85' name='L85'></a>  85 <em class='sharp'>#include</em> &lt;arpa/inet.h&gt;
<a id='L86' name='L86'></a>  86 <em class='sharp'>#endif</em>
<a id='L87' name='L87'></a>  87 <em class='sharp'>#include</em> &lt;arpa/ftp.h&gt;
<a id='L88' name='L88'></a>  88 <em class='sharp'>#include</em> &lt;arpa/telnet.h&gt;
<a id='L89' name='L89'></a>  89 <em class='sharp'>#ifdef</em> <a href='../Y/HAVE_SYS_PARAM_H.html' title='Multiple used in 7 places.'>HAVE_SYS_PARAM_H</a>
<a id='L90' name='L90'></a>  90 <em class='sharp'>#include</em> &lt;sys/param.h&gt;
<a id='L91' name='L91'></a>  91 <em class='sharp'>#endif</em>
<a id='L92' name='L92'></a>  92 <em class='sharp'>#include</em> &lt;errno.h&gt;
<a id='L93' name='L93'></a>  93 <em class='sharp'>#include</em> &lt;ctype.h&gt;
<a id='L94' name='L94'></a>  94 <em class='sharp'>#include</em> &lt;fcntl.h&gt;
<a id='L95' name='L95'></a>  95 <em class='sharp'>#include</em> &lt;inttypes.h&gt;           <em class='comment'>/* uintmax_t */</em>
<a id='L96' name='L96'></a>  96 
<a id='L97' name='L97'></a>  97 <em class='sharp'>#include</em> "<a href='lib--global.h.html'>lib/global.h</a>"
<a id='L98' name='L98'></a>  98 <em class='sharp'>#include</em> "<a href='../I/util.h.html'>lib/util.h</a>"
<a id='L99' name='L99'></a>  99 <em class='sharp'>#include</em> "<a href='lib--strutil.h.html'>lib/strutil.h</a>"        <em class='comment'>/* str_move() */</em>
<a id='L100' name='L100'></a> 100 <em class='sharp'>#include</em> "<a href='lib--mcconfig.h.html'>lib/mcconfig.h</a>"
<a id='L101' name='L101'></a> 101 
<a id='L102' name='L102'></a> 102 <em class='sharp'>#include</em> "<a href='lib--tty--tty.h.html'>lib/tty/tty.h</a>"        <em class='comment'>/* enable/disable interrupt key */</em>
<a id='L103' name='L103'></a> 103 <em class='sharp'>#include</em> "<a href='lib--widget.h.html'>lib/widget.h</a>"         <em class='comment'>/* message() */</em>
<a id='L104' name='L104'></a> 104 
<a id='L105' name='L105'></a> 105 <em class='sharp'>#include</em> "<a href='../I/history.h.html'>src/history.h</a>"
<a id='L106' name='L106'></a> 106 <em class='sharp'>#include</em> "<a href='src--setup.h.html'>src/setup.h</a>"          <em class='comment'>/* for load_anon_passwd */</em>
<a id='L107' name='L107'></a> 107 
<a id='L108' name='L108'></a> 108 <em class='sharp'>#include</em> "<a href='lib--vfs--vfs.h.html'>lib/vfs/vfs.h</a>"
<a id='L109' name='L109'></a> 109 <em class='sharp'>#include</em> "<a href='lib--vfs--utilvfs.h.html'>lib/vfs/utilvfs.h</a>"
<a id='L110' name='L110'></a> 110 <em class='sharp'>#include</em> "<a href='lib--vfs--netutil.h.html'>lib/vfs/netutil.h</a>"
<a id='L111' name='L111'></a> 111 <em class='sharp'>#include</em> "<a href='lib--vfs--xdirentry.h.html'>lib/vfs/xdirentry.h</a>"
<a id='L112' name='L112'></a> 112 <em class='sharp'>#include</em> "<a href='lib--vfs--gc.h.html'>lib/vfs/gc.h</a>"         <em class='comment'>/* vfs_stamp_create */</em>
<a id='L113' name='L113'></a> 113 
<a id='L114' name='L114'></a> 114 <em class='sharp'>#include</em> "<a href='src--vfs--ftpfs--ftpfs.h.html'>ftpfs.h</a>"
<a id='L115' name='L115'></a> 115 
<a id='L116' name='L116'></a> 116 <em class='comment'>/*** global variables ****************************************************************************/</em>
<a id='L117' name='L117'></a> 117 
<a id='L118' name='L118'></a> 118 <em class='comment'>/* Delay to retry a connection */</em>
<a id='L119' name='L119'></a> 119 <strong class='reserved'>int</strong> <a href='../Y/ftpfs_retry_seconds.html' title='Multiple used in 5 places.'>ftpfs_retry_seconds</a> = 30;
<a id='L120' name='L120'></a> 120 
<a id='L121' name='L121'></a> 121 <em class='comment'>/* Method to use to connect to ftp sites */</em>
<a id='L122' name='L122'></a> 122 <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/ftpfs_use_passive_connections.html' title='Multiple used in 6 places.'>ftpfs_use_passive_connections</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L123' name='L123'></a> 123 <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/ftpfs_use_passive_connections_over_proxy.html' title='Multiple used in 6 places.'>ftpfs_use_passive_connections_over_proxy</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L124' name='L124'></a> 124 
<a id='L125' name='L125'></a> 125 <em class='comment'>/* Method used to get directory listings:</em>
<a id='L126' name='L126'></a> 126 <em class='comment'> * 1: try 'LIST -la &lt;path&gt;', if it fails</em>
<a id='L127' name='L127'></a> 127 <em class='comment'> *    fall back to CWD &lt;path&gt;; LIST</em>
<a id='L128' name='L128'></a> 128 <em class='comment'> * 0: always use CWD &lt;path&gt;; LIST</em>
<a id='L129' name='L129'></a> 129 <em class='comment'> */</em>
<a id='L130' name='L130'></a> 130 <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/ftpfs_use_unix_list_options.html' title='Multiple used in 4 places.'>ftpfs_use_unix_list_options</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L131' name='L131'></a> 131 
<a id='L132' name='L132'></a> 132 <em class='comment'>/* First "CWD &lt;path&gt;", then "LIST -la ." */</em>
<a id='L133' name='L133'></a> 133 <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/ftpfs_first_cd_then_ls.html' title='Multiple used in 4 places.'>ftpfs_first_cd_then_ls</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L134' name='L134'></a> 134 
<a id='L135' name='L135'></a> 135 <em class='comment'>/* Use the ~/.netrc */</em>
<a id='L136' name='L136'></a> 136 <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/ftpfs_use_netrc.html' title='Multiple used in 6 places.'>ftpfs_use_netrc</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L137' name='L137'></a> 137 
<a id='L138' name='L138'></a> 138 <em class='comment'>/* Anonymous setup */</em>
<a id='L139' name='L139'></a> 139 <strong class='reserved'>char</strong> *<a href='../Y/ftpfs_anonymous_passwd.html' title='Multiple used in 12 places.'>ftpfs_anonymous_passwd</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L140' name='L140'></a> 140 <strong class='reserved'>int</strong> <a href='../Y/ftpfs_directory_timeout.html' title='Multiple used in 6 places.'>ftpfs_directory_timeout</a> = 900;
<a id='L141' name='L141'></a> 141 
<a id='L142' name='L142'></a> 142 <em class='comment'>/* Proxy host */</em>
<a id='L143' name='L143'></a> 143 <strong class='reserved'>char</strong> *<a href='../Y/ftpfs_proxy_host.html' title='Multiple used in 12 places.'>ftpfs_proxy_host</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L144' name='L144'></a> 144 
<a id='L145' name='L145'></a> 145 <em class='comment'>/* whether we have to use proxy by default? */</em>
<a id='L146' name='L146'></a> 146 <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/ftpfs_always_use_proxy.html' title='Multiple used in 6 places.'>ftpfs_always_use_proxy</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L147' name='L147'></a> 147 
<a id='L148' name='L148'></a> 148 <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/ftpfs_ignore_chattr_errors.html' title='Multiple used in 4 places.'>ftpfs_ignore_chattr_errors</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L149' name='L149'></a> 149 
<a id='L150' name='L150'></a> 150 <em class='comment'>/*** file scope macro definitions ****************************************************************/</em>
<a id='L151' name='L151'></a> 151 
<a id='L152' name='L152'></a> 152 <em class='sharp'>#ifndef</em> <a href='../D/MAXHOSTNAMELEN.html' title='Multiple defined in 2 places.'>MAXHOSTNAMELEN</a>
<a id='L153' name='L153'></a> 153 <em class='sharp'>#define</em> <a href='../R/MAXHOSTNAMELEN.html' title='Multiple referred from 4 places.'>MAXHOSTNAMELEN</a> 64
<a id='L154' name='L154'></a> 154 <em class='sharp'>#endif</em>
<a id='L155' name='L155'></a> 155 
<a id='L156' name='L156'></a> 156 <em class='sharp'>#define</em> <a href='../R/FTP_SUPER.html' title='Multiple referred from 26 places.'>FTP_SUPER</a>(<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>) ((<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *) (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>))
<a id='L157' name='L157'></a> 157 <em class='sharp'>#define</em> <a href='../R/FTP_FILE_HANDLER.html' title='Multiple referred from 4 places.'>FTP_FILE_HANDLER</a>(<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>) ((<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L232' title='Defined at 232 in src/vfs/ftpfs/ftpfs.c.'>ftp_file_handler_t</a> *) (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>))
<a id='L158' name='L158'></a> 158 <em class='sharp'>#define</em> <a href='../R/FH_SOCK.html' title='Multiple referred from 9 places.'>FH_SOCK</a> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L157' title='Defined at 157 in src/vfs/ftpfs/ftpfs.c.'>FTP_FILE_HANDLER</a>(<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>)-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>
<a id='L159' name='L159'></a> 159 
<a id='L160' name='L160'></a> 160 <em class='sharp'>#ifndef</em> <a href='../D/INADDR_NONE.html' title='Multiple defined in 2 places.'>INADDR_NONE</a>
<a id='L161' name='L161'></a> 161 <em class='sharp'>#define</em> <a href='../R/INADDR_NONE.html' title='Multiple referred from 2 places.'>INADDR_NONE</a> 0xffffffff
<a id='L162' name='L162'></a> 162 <em class='sharp'>#endif</em>
<a id='L163' name='L163'></a> 163 
<a id='L164' name='L164'></a> 164 <em class='sharp'>#define</em> <a href='../R/RFC_AUTODETECT.html' title='Multiple referred from 3 places.'>RFC_AUTODETECT</a> 0
<a id='L165' name='L165'></a> 165 <em class='sharp'>#define</em> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1856' title='Referred from 1856 in src/vfs/ftpfs/ftpfs.c.'>RFC_DARING</a> 1
<a id='L166' name='L166'></a> 166 <em class='sharp'>#define</em> <a href='../R/RFC_STRICT.html' title='Multiple referred from 6 places.'>RFC_STRICT</a> 2
<a id='L167' name='L167'></a> 167 
<a id='L168' name='L168'></a> 168 <em class='comment'>/* ftpfs_command wait_flag: */</em>
<a id='L169' name='L169'></a> 169 <em class='sharp'>#define</em> <a href='../R/NONE.html' title='Multiple referred from 9 places.'>NONE</a>        0x00
<a id='L170' name='L170'></a> 170 <em class='sharp'>#define</em> <a href='../R/WAIT_REPLY.html' title='Multiple referred from 18 places.'>WAIT_REPLY</a>  0x01
<a id='L171' name='L171'></a> 171 <em class='sharp'>#define</em> <a href='../R/WANT_STRING.html' title='Multiple referred from 6 places.'>WANT_STRING</a> 0x02
<a id='L172' name='L172'></a> 172 
<a id='L173' name='L173'></a> 173 <em class='sharp'>#define</em> <a href='../R/FTP_COMMAND_PORT.html' title='Multiple referred from 2 places.'>FTP_COMMAND_PORT</a>   21
<a id='L174' name='L174'></a> 174 
<a id='L175' name='L175'></a> 175 <em class='comment'>/* some defines only used by ftpfs_changetype */</em>
<a id='L176' name='L176'></a> 176 <em class='comment'>/* These two are valid values for the second parameter */</em>
<a id='L177' name='L177'></a> 177 <em class='sharp'>#define</em> <a href='../R/TYPE_ASCII.html' title='Multiple referred from 5 places.'>TYPE_ASCII</a>    0
<a id='L178' name='L178'></a> 178 <em class='sharp'>#define</em> <a href='../R/TYPE_BINARY.html' title='Multiple referred from 3 places.'>TYPE_BINARY</a>   1
<a id='L179' name='L179'></a> 179 
<a id='L180' name='L180'></a> 180 <em class='comment'>/* This one is only used to initialize bucket-&gt;isbinary, don't use it as</em>
<a id='L181' name='L181'></a> 181 <em class='comment'>   second parameter to ftpfs_changetype. */</em>
<a id='L182' name='L182'></a> 182 <em class='sharp'>#define</em> <a href='../R/TYPE_UNKNOWN.html' title='Multiple referred from 2 places.'>TYPE_UNKNOWN</a> -1
<a id='L183' name='L183'></a> 183 
<a id='L184' name='L184'></a> 184 <em class='sharp'>#define</em> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1505' title='Referred from 1505 in src/vfs/ftpfs/ftpfs.c.'>ABORT_TIMEOUT</a> (5 * <a href='../Y/G_USEC_PER_SEC.html' title='Multiple used in 11 places.'>G_USEC_PER_SEC</a>)
<a id='L185' name='L185'></a> 185 <em class='comment'>/*** file scope type declarations ****************************************************************/</em>
<a id='L186' name='L186'></a> 186 
<a id='L187' name='L187'></a> 187 <em class='sharp'>#ifndef</em> HAVE_SOCKLEN_T
<a id='L188' name='L188'></a> 188 <strong class='reserved'>typedef</strong> <strong class='reserved'>int</strong> <a href='../R/socklen_t.html' title='Multiple referred from 7 places.'>socklen_t</a>;
<a id='L189' name='L189'></a> 189 <em class='sharp'>#endif</em>
<a id='L190' name='L190'></a> 190 
<a id='L191' name='L191'></a> 191 <em class='comment'>/* This should match the keywords[] array below */</em>
<a id='L192' name='L192'></a> 192 <strong class='reserved'>typedef</strong> <strong class='reserved'>enum</strong>
<a id='L193' name='L193'></a> 193 <em class='brace'>{</em>
<a id='L194' name='L194'></a> 194     <a href='../R/NETRC_NONE.html' title='Multiple referred from 7 places.'>NETRC_NONE</a> = 0,
<a id='L195' name='L195'></a> 195     <a href='../R/NETRC_DEFAULT.html' title='Multiple referred from 2 places.'>NETRC_DEFAULT</a>,
<a id='L196' name='L196'></a> 196     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2497' title='Referred from 2497 in src/vfs/ftpfs/ftpfs.c.'>NETRC_MACHINE</a>,
<a id='L197' name='L197'></a> 197     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2593' title='Referred from 2593 in src/vfs/ftpfs/ftpfs.c.'>NETRC_LOGIN</a>,
<a id='L198' name='L198'></a> 198     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2611' title='Referred from 2611 in src/vfs/ftpfs/ftpfs.c.'>NETRC_PASSWORD</a>,
<a id='L199' name='L199'></a> 199     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2612' title='Referred from 2612 in src/vfs/ftpfs/ftpfs.c.'>NETRC_PASSWD</a>,
<a id='L200' name='L200'></a> 200     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2633' title='Referred from 2633 in src/vfs/ftpfs/ftpfs.c.'>NETRC_ACCOUNT</a>,
<a id='L201' name='L201'></a> 201     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2481' title='Referred from 2481 in src/vfs/ftpfs/ftpfs.c.'>NETRC_MACDEF</a>,
<a id='L202' name='L202'></a> 202     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2434' title='Referred from 2434 in src/vfs/ftpfs/ftpfs.c.'>NETRC_UNKNOWN</a>
<a id='L203' name='L203'></a> 203 <em class='brace'>}</em> <a href='../R/keyword_t.html' title='Multiple referred from 4 places.'>keyword_t</a>;
<a id='L204' name='L204'></a> 204 
<a id='L205' name='L205'></a> 205 <strong class='reserved'>typedef</strong> <strong class='reserved'>struct</strong>
<a id='L206' name='L206'></a> 206 <em class='brace'>{</em>
<a id='L207' name='L207'></a> 207     <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> <a href='../Y/base.html' title='Multiple used in 107 places.'>base</a>;    <em class='comment'>/* base class */</em>
<a id='L208' name='L208'></a> 208 
<a id='L209' name='L209'></a> 209     <strong class='reserved'>int</strong> <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>;
<a id='L210' name='L210'></a> 210 
<a id='L211' name='L211'></a> 211     <strong class='reserved'>char</strong> *<a href='../Y/proxy.html' title='Multiple used in 8 places.'>proxy</a>;                <em class='comment'>/* proxy server, NULL if no proxy */</em>
<a id='L212' name='L212'></a> 212     <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/failed_on_login.html' title='Multiple used in 4 places.'>failed_on_login</a>;   <em class='comment'>/* used to pass the failure reason to upper levels */</em>
<a id='L213' name='L213'></a> 213     <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/use_passive_connection.html' title='Multiple used in 9 places.'>use_passive_connection</a>;
<a id='L214' name='L214'></a> 214     <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/remote_is_amiga.html' title='Multiple used in 4 places.'>remote_is_amiga</a>;   <em class='comment'>/* No leading slash allowed for AmiTCP (Amiga) */</em>
<a id='L215' name='L215'></a> 215     <strong class='reserved'>int</strong> <a href='../Y/isbinary.html' title='Multiple used in 7 places.'>isbinary</a>;
<a id='L216' name='L216'></a> 216     <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/cwd_deferred.html' title='Multiple used in 3 places.'>cwd_deferred</a>;      <em class='comment'>/* current_directory was changed but CWD command hasn't</em>
<a id='L217' name='L217'></a> 217 <em class='comment'>                                   been sent yet */</em>
<a id='L218' name='L218'></a> 218     <strong class='reserved'>int</strong> <a href='../Y/strict.html' title='Multiple used in 10 places.'>strict</a>;                 <em class='comment'>/* ftp server doesn't understand</em>
<a id='L219' name='L219'></a> 219 <em class='comment'>                                 * "LIST -la &lt;path&gt;"; use "CWD &lt;path&gt;"/</em>
<a id='L220' name='L220'></a> 220 <em class='comment'>                                 * "LIST" instead</em>
<a id='L221' name='L221'></a> 221 <em class='comment'>                                 */</em>
<a id='L222' name='L222'></a> 222     <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a>;
<a id='L223' name='L223'></a> 223     <strong class='reserved'>char</strong> *<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a>;
<a id='L224' name='L224'></a> 224 <em class='brace'>}</em> <a href='../R/ftp_super_t.html' title='Multiple referred from 16 places.'>ftp_super_t</a>;
<a id='L225' name='L225'></a> 225 
<a id='L226' name='L226'></a> 226 <strong class='reserved'>typedef</strong> <strong class='reserved'>struct</strong>
<a id='L227' name='L227'></a> 227 <em class='brace'>{</em>
<a id='L228' name='L228'></a> 228     <a href='../S/lib--vfs--xdirentry.h.html#L106' title='Defined at 106 in lib/vfs/xdirentry.h.'>vfs_file_handler_t</a> <a href='../Y/base.html' title='Multiple used in 107 places.'>base</a>;    <em class='comment'>/* base class */</em>
<a id='L229' name='L229'></a> 229 
<a id='L230' name='L230'></a> 230     <strong class='reserved'>int</strong> <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>;
<a id='L231' name='L231'></a> 231     <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/append.html' title='Multiple used in 8 places.'>append</a>;
<a id='L232' name='L232'></a> 232 <em class='brace'>}</em> <a href='../R/ftp_file_handler_t.html' title='Multiple referred from 5 places.'>ftp_file_handler_t</a>;
<a id='L233' name='L233'></a> 233 
<a id='L234' name='L234'></a> 234 <em class='comment'>/*** file scope variables ************************************************************************/</em>
<a id='L235' name='L235'></a> 235 
<a id='L236' name='L236'></a> 236 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong> <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a>;
<a id='L237' name='L237'></a> 237 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong> <a href='../Y/code.html' title='Multiple used in 120 places.'>code</a>;
<a id='L238' name='L238'></a> 238 
<a id='L239' name='L239'></a> 239 <strong class='reserved'>static</strong> <strong class='reserved'>char</strong> <a href='../Y/reply_str.html' title='Multiple used in 10 places.'>reply_str</a>[80];
<a id='L240' name='L240'></a> 240 
<a id='L241' name='L241'></a> 241 <strong class='reserved'>static</strong> <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L112' title='Defined at 112 in lib/vfs/xdirentry.h.'>vfs_s_subclass</a> <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>;
<a id='L242' name='L242'></a> 242 <strong class='reserved'>static</strong> <strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a> = <a href='../S/lib--vfs--vfs.h.html#L28' title='Defined at 28 in lib/vfs/vfs.h.'>VFS_CLASS</a> (&amp;<a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>);
<a id='L243' name='L243'></a> 243 
<a id='L244' name='L244'></a> 244 <strong class='reserved'>static</strong> <a href='../Y/GSList.html' title='Multiple used in 57 places.'>GSList</a> *<a href='../Y/no_proxy.html' title='Multiple used in 4 places.'>no_proxy</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L245' name='L245'></a> 245 
<a id='L246' name='L246'></a> 246 <strong class='reserved'>static</strong> <strong class='reserved'>char</strong> <a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>[<a href='../S/lib--global.h.html#L113' title='Defined at 113 in lib/global.h.'>BUF_MEDIUM</a>];
<a id='L247' name='L247'></a> 247 <strong class='reserved'>static</strong> <strong class='reserved'>char</strong> *<a href='../Y/netrc.html' title='Multiple used in 4 places.'>netrc</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L248' name='L248'></a> 248 <strong class='reserved'>static</strong> <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>;
<a id='L249' name='L249'></a> 249 
<a id='L250' name='L250'></a> 250 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L251' name='L251'></a> 251 <em class='comment'>/*** file scope functions ************************************************************************/</em>
<a id='L252' name='L252'></a> 252 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L253' name='L253'></a> 253 
<a id='L254' name='L254'></a> 254 <em class='comment'>/* char *ftpfs_translate_path (struct ftpfs_connection *bucket, char *remote_path)</em>
<a id='L255' name='L255'></a> 255 <em class='comment'>   Translate a Unix path, i.e. MC's internal path representation (e.g.</em>
<a id='L256' name='L256'></a> 256 <em class='comment'>   /somedir/somefile) to a path valid for the remote server. Every path</em>
<a id='L257' name='L257'></a> 257 <em class='comment'>   transferred to the remote server has to be mangled by this function</em>
<a id='L258' name='L258'></a> 258 <em class='comment'>   right prior to sending it.</em>
<a id='L259' name='L259'></a> 259 <em class='comment'>   Currently only Amiga ftp servers are handled in a special manner.</em>
<a id='L260' name='L260'></a> 260 <em class='comment'></em>
<a id='L261' name='L261'></a> 261 <em class='comment'>   When the remote server is an amiga:</em>
<a id='L262' name='L262'></a> 262 <em class='comment'>   a) strip leading slash if necesarry</em>
<a id='L263' name='L263'></a> 263 <em class='comment'>   b) replace first occurrence of ":/" with ":"</em>
<a id='L264' name='L264'></a> 264 <em class='comment'>   c) strip trailing "/."</em>
<a id='L265' name='L265'></a> 265 <em class='comment'> */</em>
<a id='L266' name='L266'></a> 266 
<a id='L267' name='L267'></a> 267 <strong class='reserved'>static</strong> <strong class='reserved'>char</strong> *<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1057' title='Defined at 1057 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_current_directory</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L268' name='L268'></a> 268 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2186' title='Defined at 2186 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_chdir_internal</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
<a id='L269' name='L269'></a> 269                                  <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>);
<a id='L270' name='L270'></a> 270 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L844' title='Defined at 844 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_socket</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L271' name='L271'></a> 271 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L615' title='Defined at 615 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_login_server</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
<a id='L272' name='L272'></a> 272                                     <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/netrcpass.html' title='Multiple used in 4 places.'>netrcpass</a>);
<a id='L273' name='L273'></a> 273 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2535' title='Defined at 2535 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_lookup</a> (<strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <strong class='reserved'>char</strong> **<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a>, <strong class='reserved'>char</strong> **<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a>);
<a id='L274' name='L274'></a> 274 
<a id='L275' name='L275'></a> 275 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L276' name='L276'></a> 276 
<a id='L277' name='L277'></a> 277 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L278' name='L278'></a> 278 <a href='../R/ftpfs_set_blksize.html' title='Multiple referred from 4 places.'>ftpfs_set_blksize</a> (<strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> *<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>)
     <em class='comment'>/* <img class='icon' src='../icons/n_left.png' alt='[previous]' /><a href='#L289'><img class='icon' src='../icons/right.png' alt='[next]' /></a><img class='icon' src='../icons/n_first.png' alt='[first]' /><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+278 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L279' name='L279'></a> 279 <em class='brace'>{</em>
<a id='L280' name='L280'></a> 280 <em class='sharp'>#ifdef</em> <a href='../Y/HAVE_STRUCT_STAT_ST_BLKSIZE.html' title='Multiple used in 23 places.'>HAVE_STRUCT_STAT_ST_BLKSIZE</a>
<a id='L281' name='L281'></a> 281     <em class='comment'>/* redefine block size */</em>
<a id='L282' name='L282'></a> 282     <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>-&gt;<a href='../Y/st_blksize.html' title='Multiple used in 27 places.'>st_blksize</a> = 64 * 1024;  <em class='comment'>/* FIXME */</em>
<a id='L283' name='L283'></a> 283 <em class='sharp'>#endif</em>
<a id='L284' name='L284'></a> 284 <em class='brace'>}</em>
<a id='L285' name='L285'></a> 285 
<a id='L286' name='L286'></a> 286 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L287' name='L287'></a> 287 
<a id='L288' name='L288'></a> 288 <strong class='reserved'>static</strong> <strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> *
<a id='L289' name='L289'></a> 289 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1026' title='Referred from 1026 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_default_stat</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>)
     <em class='comment'>/* <a href='#L278'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L303'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+289 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L290' name='L290'></a> 290 <em class='brace'>{</em>
<a id='L291' name='L291'></a> 291     <strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> *<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>;
<a id='L292' name='L292'></a> 292 
<a id='L293' name='L293'></a> 293     <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a> = <a href='../S/lib--vfs--direntry.c.html#L1006' title='Defined at 1006 in lib/vfs/direntry.c.'>vfs_s_default_stat</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/src--vfs--smbfs--helpers--include--smb.h.html#L1377' title='Defined at 1377 in src/vfs/smbfs/helpers/include/smb.h.'>S_IFDIR</a> | 0755);
<a id='L294' name='L294'></a> 294     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L278' title='Defined at 278 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_set_blksize</a> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>);
<a id='L295' name='L295'></a> 295     <a href='../S/lib--vfs--direntry.c.html#L1049' title='Defined at 1049 in lib/vfs/direntry.c.'>vfs_adjust_stat</a> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>);
<a id='L296' name='L296'></a> 296 
<a id='L297' name='L297'></a> 297     <strong class='reserved'>return</strong> <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>;
<a id='L298' name='L298'></a> 298 <em class='brace'>}</em>
<a id='L299' name='L299'></a> 299 
<a id='L300' name='L300'></a> 300 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L301' name='L301'></a> 301 
<a id='L302' name='L302'></a> 302 <strong class='reserved'>static</strong> <strong class='reserved'>char</strong> *
<a id='L303' name='L303'></a> 303 <a href='../R/ftpfs_translate_path.html' title='Multiple referred from 3 places.'>ftpfs_translate_path</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>)
     <em class='comment'>/* <a href='#L289'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L352'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+303 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L304' name='L304'></a> 304 <em class='brace'>{</em>
<a id='L305' name='L305'></a> 305     <strong class='reserved'>char</strong> *<a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>, *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>;
<a id='L306' name='L306'></a> 306 
<a id='L307' name='L307'></a> 307     <strong class='reserved'>if</strong> (!<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/remote_is_amiga.html' title='Multiple used in 4 places.'>remote_is_amiga</a>)
<a id='L308' name='L308'></a> 308         <strong class='reserved'>return</strong> <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>);
<a id='L309' name='L309'></a> 309 
<a id='L310' name='L310'></a> 310     <strong class='reserved'>if</strong> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L311' name='L311'></a> 311     <em class='brace'>{</em>
<a id='L312' name='L312'></a> 312         <a href='../Y/fprintf.html' title='Multiple used in 106 places.'>fprintf</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>, "MC -- ftpfs_translate_path: %s\n", <a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>);
<a id='L313' name='L313'></a> 313         <a href='../Y/fflush.html' title='Multiple used in 33 places.'>fflush</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>);
<a id='L314' name='L314'></a> 314     <em class='brace'>}</em>
<a id='L315' name='L315'></a> 315 
<a id='L316' name='L316'></a> 316     <em class='comment'>/* strip leading slash(es) */</em>
<a id='L317' name='L317'></a> 317     <strong class='reserved'>while</strong> (<a href='../S/lib--global.h.html#L128' title='Defined at 128 in lib/global.h.'>IS_PATH_SEP</a> (*<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>))
<a id='L318' name='L318'></a> 318         <a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>++;
<a id='L319' name='L319'></a> 319 
<a id='L320' name='L320'></a> 320     <em class='comment'>/* Don't change "/" into "", e.g. "CWD " would be invalid. */</em>
<a id='L321' name='L321'></a> 321     <strong class='reserved'>if</strong> (*<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a> == '\0')
<a id='L322' name='L322'></a> 322         <strong class='reserved'>return</strong> <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (".");
<a id='L323' name='L323'></a> 323 
<a id='L324' name='L324'></a> 324     <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>);
<a id='L325' name='L325'></a> 325 
<a id='L326' name='L326'></a> 326     <em class='comment'>/* replace first occurrence of ":/" with ":" */</em>
<a id='L327' name='L327'></a> 327     <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = <a href='../D/strchr.html' title='Multiple defined in 2 places.'>strchr</a> (<a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>, ':');
<a id='L328' name='L328'></a> 328     <strong class='reserved'>if</strong> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a> &amp;&amp; <a href='../S/lib--global.h.html#L128' title='Defined at 128 in lib/global.h.'>IS_PATH_SEP</a> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>[1]))
<a id='L329' name='L329'></a> 329         <a href='../S/lib--strutil.h.html#L619' title='Defined at 619 in lib/strutil.h.'>str_move</a> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> + 1, <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> + 2);
<a id='L330' name='L330'></a> 330 
<a id='L331' name='L331'></a> 331     <em class='comment'>/* strip trailing "/." */</em>
<a id='L332' name='L332'></a> 332     <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = <a href='../D/strrchr.html' title='Multiple defined in 2 places.'>strrchr</a> (<a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>, <a href='../S/lib--global.h.html#L126' title='Defined at 126 in lib/global.h.'>PATH_SEP</a>);
<a id='L333' name='L333'></a> 333     <strong class='reserved'>if</strong> ((<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>) &amp;&amp; (*(<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> + 1) == '.') &amp;&amp; (*(<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> + 2) == '\0'))
<a id='L334' name='L334'></a> 334         *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = '\0';
<a id='L335' name='L335'></a> 335 
<a id='L336' name='L336'></a> 336     <strong class='reserved'>return</strong> <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L337' name='L337'></a> 337 <em class='brace'>}</em>
<a id='L338' name='L338'></a> 338 
<a id='L339' name='L339'></a> 339 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L340' name='L340'></a> 340 <em class='comment'>/** Extract the hostname and username from the path */</em>
<a id='L341' name='L341'></a> 341 <em class='comment'>/*</em>
<a id='L342' name='L342'></a> 342 <em class='comment'> * path is in the form: [user@]hostname:port/remote-dir, e.g.:</em>
<a id='L343' name='L343'></a> 343 <em class='comment'> * ftp://sunsite.unc.edu/pub/linux</em>
<a id='L344' name='L344'></a> 344 <em class='comment'> * ftp://miguel@sphinx.nuclecu.unam.mx/c/nc</em>
<a id='L345' name='L345'></a> 345 <em class='comment'> * ftp://tsx-11.mit.edu:8192/</em>
<a id='L346' name='L346'></a> 346 <em class='comment'> * ftp://joe@foo.edu:11321/private</em>
<a id='L347' name='L347'></a> 347 <em class='comment'> * If the user is empty, e.g. ftp://@roxanne/private, then your login name</em>
<a id='L348' name='L348'></a> 348 <em class='comment'> * is supplied.</em>
<a id='L349' name='L349'></a> 349 <em class='comment'> */</em>
<a id='L350' name='L350'></a> 350 
<a id='L351' name='L351'></a> 351 <strong class='reserved'>static</strong> <a href='../S/lib--vfs--path.h.html#L54' title='Defined at 54 in lib/vfs/path.h.'>vfs_path_element_t</a> *
<a id='L352' name='L352'></a> 352 <a href='../R/ftpfs_correct_url_parameters.html' title='Multiple referred from 2 places.'>ftpfs_correct_url_parameters</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L54' title='Defined at 54 in lib/vfs/path.h.'>vfs_path_element_t</a> * <a href='../Y/velement.html' title='Multiple used in 2 places.'>velement</a>)
     <em class='comment'>/* <a href='#L303'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L391'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+352 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L353' name='L353'></a> 353 <em class='brace'>{</em>
<a id='L354' name='L354'></a> 354     <a href='../S/lib--vfs--path.h.html#L54' title='Defined at 54 in lib/vfs/path.h.'>vfs_path_element_t</a> *<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a> = <a href='../S/lib--vfs--path.c.html#L849' title='Defined at 849 in lib/vfs/path.c.'>vfs_path_element_clone</a> (<a href='../Y/velement.html' title='Multiple used in 2 places.'>velement</a>);
<a id='L355' name='L355'></a> 355 
<a id='L356' name='L356'></a> 356     <strong class='reserved'>if</strong> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> == 0)
<a id='L357' name='L357'></a> 357         <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L173' title='Defined at 173 in src/vfs/ftpfs/ftpfs.c.'>FTP_COMMAND_PORT</a>;
<a id='L358' name='L358'></a> 358 
<a id='L359' name='L359'></a> 359     <strong class='reserved'>if</strong> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L360' name='L360'></a> 360     <em class='brace'>{</em>
<a id='L361' name='L361'></a> 361         <em class='comment'>/* Look up user and password in netrc */</em>
<a id='L362' name='L362'></a> 362         <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_use_netrc.html' title='Multiple used in 6 places.'>ftpfs_use_netrc</a>)
<a id='L363' name='L363'></a> 363             <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2535' title='Defined at 2535 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_lookup</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, &amp;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>, &amp;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/password.html' title='Multiple used in 55 places.'>password</a>);
<a id='L364' name='L364'></a> 364     <em class='brace'>}</em>
<a id='L365' name='L365'></a> 365     <strong class='reserved'>if</strong> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L366' name='L366'></a> 366         <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> ("anonymous");
<a id='L367' name='L367'></a> 367 
<a id='L368' name='L368'></a> 368     <em class='comment'>/* Look up password in netrc for known user */</em>
<a id='L369' name='L369'></a> 369     <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_use_netrc.html' title='Multiple used in 6 places.'>ftpfs_use_netrc</a> &amp;&amp; <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/password.html' title='Multiple used in 55 places.'>password</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L370' name='L370'></a> 370     <em class='brace'>{</em>
<a id='L371' name='L371'></a> 371         <strong class='reserved'>char</strong> *<a href='../Y/new_user.html' title='Multiple used in 12 places.'>new_user</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L372' name='L372'></a> 372         <strong class='reserved'>char</strong> *<a href='../Y/new_passwd.html' title='Multiple used in 3 places.'>new_passwd</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L373' name='L373'></a> 373 
<a id='L374' name='L374'></a> 374         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2535' title='Defined at 2535 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_lookup</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, &amp;<a href='../Y/new_user.html' title='Multiple used in 12 places.'>new_user</a>, &amp;<a href='../Y/new_passwd.html' title='Multiple used in 3 places.'>new_passwd</a>);
<a id='L375' name='L375'></a> 375 
<a id='L376' name='L376'></a> 376         <em class='comment'>/* If user is different, remove password */</em>
<a id='L377' name='L377'></a> 377         <strong class='reserved'>if</strong> (<a href='../Y/new_user.html' title='Multiple used in 12 places.'>new_user</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a> &amp;&amp; <a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>, <a href='../Y/new_user.html' title='Multiple used in 12 places.'>new_user</a>) != 0)
<a id='L378' name='L378'></a> 378             <a href='../S/lib--util.h.html#L25' title='Defined at 25 in lib/util.h.'>MC_PTR_FREE</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/password.html' title='Multiple used in 55 places.'>password</a>);
<a id='L379' name='L379'></a> 379 
<a id='L380' name='L380'></a> 380         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/new_user.html' title='Multiple used in 12 places.'>new_user</a>);
<a id='L381' name='L381'></a> 381         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/new_passwd.html' title='Multiple used in 3 places.'>new_passwd</a>);
<a id='L382' name='L382'></a> 382     <em class='brace'>}</em>
<a id='L383' name='L383'></a> 383 
<a id='L384' name='L384'></a> 384     <strong class='reserved'>return</strong> <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>;
<a id='L385' name='L385'></a> 385 <em class='brace'>}</em>
<a id='L386' name='L386'></a> 386 
<a id='L387' name='L387'></a> 387 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L388' name='L388'></a> 388 <em class='comment'>/* Returns a reply code, check /usr/include/arpa/ftp.h for possible values */</em>
<a id='L389' name='L389'></a> 389 
<a id='L390' name='L390'></a> 390 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L391' name='L391'></a> 391 <a href='../R/ftpfs_get_reply.html' title='Multiple referred from 12 places.'>ftpfs_get_reply</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>int</strong> <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <strong class='reserved'>char</strong> *<a href='../Y/string_buf.html' title='Multiple used in 14 places.'>string_buf</a>, <strong class='reserved'>int</strong> <a href='../Y/string_len.html' title='Multiple used in 14 places.'>string_len</a>)
     <em class='comment'>/* <a href='#L352'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L444'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+391 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L392' name='L392'></a> 392 <em class='brace'>{</em>
<a id='L393' name='L393'></a> 393     <strong class='reserved'>while</strong> (<a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>)
<a id='L394' name='L394'></a> 394     <em class='brace'>{</em>
<a id='L395' name='L395'></a> 395         <strong class='reserved'>char</strong> <a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>[<a href='../S/lib--global.h.html#L110' title='Defined at 110 in lib/global.h.'>BUF_1K</a>];
<a id='L396' name='L396'></a> 396 
<a id='L397' name='L397'></a> 397         <strong class='reserved'>if</strong> (<a href='../S/lib--vfs--direntry.c.html#L1619' title='Defined at 1619 in lib/vfs/direntry.c.'>vfs_s_get_line</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>), '\n') == 0)
<a id='L398' name='L398'></a> 398         <em class='brace'>{</em>
<a id='L399' name='L399'></a> 399             <strong class='reserved'>if</strong> (<a href='../Y/string_buf.html' title='Multiple used in 14 places.'>string_buf</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L400' name='L400'></a> 400                 *<a href='../Y/string_buf.html' title='Multiple used in 14 places.'>string_buf</a> = '\0';
<a id='L401' name='L401'></a> 401             <a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> = 421;
<a id='L402' name='L402'></a> 402             <strong class='reserved'>return</strong> 4;
<a id='L403' name='L403'></a> 403         <em class='brace'>}</em>
<a id='L404' name='L404'></a> 404 
<a id='L405' name='L405'></a> 405         <em class='comment'>/* cppcheck-suppress invalidscanf */</em>
<a id='L406' name='L406'></a> 406         <strong class='reserved'>switch</strong> (<a href='../Y/sscanf.html' title='Multiple used in 28 places.'>sscanf</a> (<a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>, "%d", &amp;<a href='../Y/code.html' title='Multiple used in 120 places.'>code</a>))
<a id='L407' name='L407'></a> 407         <em class='brace'>{</em>
<a id='L408' name='L408'></a> 408         <strong class='reserved'>case</strong> 0:
<a id='L409' name='L409'></a> 409             <strong class='reserved'>if</strong> (<a href='../Y/string_buf.html' title='Multiple used in 14 places.'>string_buf</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L410' name='L410'></a> 410                 <a href='../Y/g_strlcpy.html' title='Multiple used in 29 places.'>g_strlcpy</a> (<a href='../Y/string_buf.html' title='Multiple used in 14 places.'>string_buf</a>, <a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>, <a href='../Y/string_len.html' title='Multiple used in 14 places.'>string_len</a>);
<a id='L411' name='L411'></a> 411             <a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> = 500;
<a id='L412' name='L412'></a> 412             <strong class='reserved'>return</strong> 5;
<a id='L413' name='L413'></a> 413         <strong class='reserved'>case</strong> 1:
<a id='L414' name='L414'></a> 414             <strong class='reserved'>if</strong> (<a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>[3] == '-')
<a id='L415' name='L415'></a> 415             <em class='brace'>{</em>
<a id='L416' name='L416'></a> 416                 <strong class='reserved'>while</strong> (<a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>)
<a id='L417' name='L417'></a> 417                 <em class='brace'>{</em>
<a id='L418' name='L418'></a> 418                     <strong class='reserved'>int</strong> <a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a>;
<a id='L419' name='L419'></a> 419 
<a id='L420' name='L420'></a> 420                     <strong class='reserved'>if</strong> (<a href='../S/lib--vfs--direntry.c.html#L1619' title='Defined at 1619 in lib/vfs/direntry.c.'>vfs_s_get_line</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>), '\n') == 0)
<a id='L421' name='L421'></a> 421                     <em class='brace'>{</em>
<a id='L422' name='L422'></a> 422                         <strong class='reserved'>if</strong> (<a href='../Y/string_buf.html' title='Multiple used in 14 places.'>string_buf</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L423' name='L423'></a> 423                             *<a href='../Y/string_buf.html' title='Multiple used in 14 places.'>string_buf</a> = '\0';
<a id='L424' name='L424'></a> 424                         <a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> = 421;
<a id='L425' name='L425'></a> 425                         <strong class='reserved'>return</strong> 4;
<a id='L426' name='L426'></a> 426                     <em class='brace'>}</em>
<a id='L427' name='L427'></a> 427                     <em class='comment'>/* cppcheck-suppress invalidscanf */</em>
<a id='L428' name='L428'></a> 428                     <strong class='reserved'>if</strong> ((<a href='../Y/sscanf.html' title='Multiple used in 28 places.'>sscanf</a> (<a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>, "%d", &amp;<a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a>) &gt; 0) &amp;&amp; (<a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> == <a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a>) &amp;&amp; (<a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>[3] == ' '))
<a id='L429' name='L429'></a> 429                         <strong class='reserved'>break</strong>;
<a id='L430' name='L430'></a> 430                 <em class='brace'>}</em>
<a id='L431' name='L431'></a> 431             <em class='brace'>}</em>
<a id='L432' name='L432'></a> 432             <strong class='reserved'>if</strong> (<a href='../Y/string_buf.html' title='Multiple used in 14 places.'>string_buf</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L433' name='L433'></a> 433                 <a href='../Y/g_strlcpy.html' title='Multiple used in 29 places.'>g_strlcpy</a> (<a href='../Y/string_buf.html' title='Multiple used in 14 places.'>string_buf</a>, <a href='../Y/answer.html' title='Multiple used in 19 places.'>answer</a>, <a href='../Y/string_len.html' title='Multiple used in 14 places.'>string_len</a>);
<a id='L434' name='L434'></a> 434             <strong class='reserved'>return</strong> <a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> / 100;
<a id='L435' name='L435'></a> 435         <strong class='reserved'>default</strong>:
<a id='L436' name='L436'></a> 436             <strong class='reserved'>break</strong>;
<a id='L437' name='L437'></a> 437         <em class='brace'>}</em>
<a id='L438' name='L438'></a> 438     <em class='brace'>}</em>
<a id='L439' name='L439'></a> 439 <em class='brace'>}</em>
<a id='L440' name='L440'></a> 440 
<a id='L441' name='L441'></a> 441 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L442' name='L442'></a> 442 
<a id='L443' name='L443'></a> 443 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a>
<a id='L444' name='L444'></a> 444 <a href='../R/ftpfs_reconnect.html' title='Multiple referred from 3 places.'>ftpfs_reconnect</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)
     <em class='comment'>/* <a href='#L391'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L477'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+444 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L445' name='L445'></a> 445 <em class='brace'>{</em>
<a id='L446' name='L446'></a> 446     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L447' name='L447'></a> 447     <strong class='reserved'>int</strong> <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>;
<a id='L448' name='L448'></a> 448 
<a id='L449' name='L449'></a> 449     <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L844' title='Defined at 844 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_socket</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L450' name='L450'></a> 450     <strong class='reserved'>if</strong> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> != -1)
<a id='L451' name='L451'></a> 451     <em class='brace'>{</em>
<a id='L452' name='L452'></a> 452         <strong class='reserved'>char</strong> *<a href='../Y/cwdir.html' title='Multiple used in 5 places.'>cwdir</a> = <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a>;
<a id='L453' name='L453'></a> 453 
<a id='L454' name='L454'></a> 454         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>);
<a id='L455' name='L455'></a> 455         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>;
<a id='L456' name='L456'></a> 456         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L457' name='L457'></a> 457 
<a id='L458' name='L458'></a> 458         <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L615' title='Defined at 615 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_login_server</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/password.html' title='Multiple used in 55 places.'>password</a>))
<a id='L459' name='L459'></a> 459         <em class='brace'>{</em>
<a id='L460' name='L460'></a> 460             <strong class='reserved'>if</strong> (<a href='../Y/cwdir.html' title='Multiple used in 5 places.'>cwdir</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L461' name='L461'></a> 461                 <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L462' name='L462'></a> 462 
<a id='L463' name='L463'></a> 463             <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2186' title='Defined at 2186 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_chdir_internal</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/cwdir.html' title='Multiple used in 5 places.'>cwdir</a>);
<a id='L464' name='L464'></a> 464             <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/cwdir.html' title='Multiple used in 5 places.'>cwdir</a>);
<a id='L465' name='L465'></a> 465             <strong class='reserved'>return</strong> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> == <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>);
<a id='L466' name='L466'></a> 466         <em class='brace'>}</em>
<a id='L467' name='L467'></a> 467 
<a id='L468' name='L468'></a> 468         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a> = <a href='../Y/cwdir.html' title='Multiple used in 5 places.'>cwdir</a>;
<a id='L469' name='L469'></a> 469     <em class='brace'>}</em>
<a id='L470' name='L470'></a> 470 
<a id='L471' name='L471'></a> 471     <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L472' name='L472'></a> 472 <em class='brace'>}</em>
<a id='L473' name='L473'></a> 473 
<a id='L474' name='L474'></a> 474 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L475' name='L475'></a> 475 
<a id='L476' name='L476'></a> 476 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L477' name='L477'></a> 477 <a href='../R/G_GNUC_PRINTF.html' title='Multiple referred from 13 places.'>G_GNUC_PRINTF</a> (4, 5)
     <em class='comment'>/* <a href='#L444'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L566'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+477 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L478' name='L478'></a> 478 <a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <strong class='reserved'>int</strong> <a href='../Y/wait_reply.html' title='Multiple used in 11 places.'>wait_reply</a>, <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/fmt.html' title='Multiple used in 36 places.'>fmt</a>,
<a id='L479' name='L479'></a> 479                ...)
<a id='L480' name='L480'></a> 480 <em class='brace'>{</em>
<a id='L481' name='L481'></a> 481     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L482' name='L482'></a> 482     <a href='../Y/va_list.html' title='Multiple used in 43 places.'>va_list</a> <a href='../Y/ap.html' title='Multiple used in 109 places.'>ap</a>;
<a id='L483' name='L483'></a> 483     <a href='../Y/GString.html' title='Multiple used in 219 places.'>GString</a> *<a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>;
<a id='L484' name='L484'></a> 484     <strong class='reserved'>int</strong> <a href='../Y/status.html' title='Multiple used in 157 places.'>status</a>;
<a id='L485' name='L485'></a> 485     <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/retry.html' title='Multiple used in 9 places.'>retry</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L486' name='L486'></a> 486     <strong class='reserved'>static</strong> <strong class='reserved'>int</strong> <a href='../Y/level.html' title='Multiple used in 49 places.'>level</a> = 0;       <em class='comment'>/* ftpfs_login_server() use ftpfs_command() */</em>
<a id='L487' name='L487'></a> 487 
<a id='L488' name='L488'></a> 488     <a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a> = <a href='../Y/g_string_sized_new.html' title='Multiple used in 50 places.'>g_string_sized_new</a> (32);
<a id='L489' name='L489'></a> 489     <a href='../Y/va_start.html' title='Multiple used in 41 places.'>va_start</a> (<a href='../Y/ap.html' title='Multiple used in 109 places.'>ap</a>, <a href='../Y/fmt.html' title='Multiple used in 36 places.'>fmt</a>);
<a id='L490' name='L490'></a> 490     g_string_vprintf (<a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>, <a href='../Y/fmt.html' title='Multiple used in 36 places.'>fmt</a>, <a href='../Y/ap.html' title='Multiple used in 109 places.'>ap</a>);
<a id='L491' name='L491'></a> 491     <a href='../Y/va_end.html' title='Multiple used in 38 places.'>va_end</a> (<a href='../Y/ap.html' title='Multiple used in 109 places.'>ap</a>);
<a id='L492' name='L492'></a> 492     <a href='../Y/g_string_append.html' title='Multiple used in 106 places.'>g_string_append</a> (<a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>, "\r\n");
<a id='L493' name='L493'></a> 493 
<a id='L494' name='L494'></a> 494     <strong class='reserved'>if</strong> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L495' name='L495'></a> 495     <em class='brace'>{</em>
<a id='L496' name='L496'></a> 496         <strong class='reserved'>if</strong> (<a href='../Y/strncmp.html' title='Multiple used in 127 places.'>strncmp</a> (<a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>-&gt;<a href='../Y/str.html' title='Multiple used in 587 places.'>str</a>, "PASS ", 5) == 0)
<a id='L497' name='L497'></a> 497             <a href='../Y/fputs.html' title='Multiple used in 34 places.'>fputs</a> ("PASS &lt;Password not logged&gt;\r\n", <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>);
<a id='L498' name='L498'></a> 498         <strong class='reserved'>else</strong>
<a id='L499' name='L499'></a> 499         <em class='brace'>{</em>
<a id='L500' name='L500'></a> 500             <a href='../Y/size_t.html' title='Multiple used in 726 places.'>size_t</a> <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L501' name='L501'></a> 501 
<a id='L502' name='L502'></a> 502             <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a> = <a href='../Y/fwrite.html' title='Multiple used in 6 places.'>fwrite</a> (<a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>-&gt;<a href='../Y/str.html' title='Multiple used in 587 places.'>str</a>, <a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>-&gt;<a href='../Y/len.html' title='Multiple used in 1086 places.'>len</a>, 1, <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>);
<a id='L503' name='L503'></a> 503             (<strong class='reserved'>void</strong>) <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L504' name='L504'></a> 504         <em class='brace'>}</em>
<a id='L505' name='L505'></a> 505 
<a id='L506' name='L506'></a> 506         <a href='../Y/fflush.html' title='Multiple used in 33 places.'>fflush</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>);
<a id='L507' name='L507'></a> 507     <em class='brace'>}</em>
<a id='L508' name='L508'></a> 508 
<a id='L509' name='L509'></a> 509     <a href='../Y/got_sigpipe.html' title='Multiple used in 6 places.'>got_sigpipe</a> = 0;
<a id='L510' name='L510'></a> 510     <a href='../S/lib--tty--tty.c.html#L141' title='Defined at 141 in lib/tty/tty.c.'>tty_enable_interrupt_key</a> ();
<a id='L511' name='L511'></a> 511     <a href='../Y/status.html' title='Multiple used in 157 places.'>status</a> = <a href='../Y/write.html' title='Multiple used in 59 places.'>write</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>-&gt;<a href='../Y/str.html' title='Multiple used in 587 places.'>str</a>, <a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>-&gt;<a href='../Y/len.html' title='Multiple used in 1086 places.'>len</a>);
<a id='L512' name='L512'></a> 512 
<a id='L513' name='L513'></a> 513     <strong class='reserved'>if</strong> (<a href='../Y/status.html' title='Multiple used in 157 places.'>status</a> &lt; 0)
<a id='L514' name='L514'></a> 514     <em class='brace'>{</em>
<a id='L515' name='L515'></a> 515         <a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> = 421;
<a id='L516' name='L516'></a> 516 
<a id='L517' name='L517'></a> 517         <strong class='reserved'>if</strong> (<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a> == <a href='../Y/EPIPE.html' title='Multiple used in 3 places.'>EPIPE</a>)
<a id='L518' name='L518'></a> 518         <em class='brace'>{</em>                       <em class='comment'>/* Remote server has closed connection */</em>
<a id='L519' name='L519'></a> 519             <strong class='reserved'>if</strong> (<a href='../Y/level.html' title='Multiple used in 49 places.'>level</a> == 0)
<a id='L520' name='L520'></a> 520             <em class='brace'>{</em>
<a id='L521' name='L521'></a> 521                 <a href='../Y/level.html' title='Multiple used in 49 places.'>level</a> = 1;
<a id='L522' name='L522'></a> 522                 <a href='../Y/status.html' title='Multiple used in 157 places.'>status</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L444' title='Defined at 444 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_reconnect</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>) ? 1 : 0;
<a id='L523' name='L523'></a> 523                 <a href='../Y/level.html' title='Multiple used in 49 places.'>level</a> = 0;
<a id='L524' name='L524'></a> 524                 <strong class='reserved'>if</strong> (<a href='../Y/status.html' title='Multiple used in 157 places.'>status</a> != 0 &amp;&amp; (<a href='../Y/write.html' title='Multiple used in 59 places.'>write</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>-&gt;<a href='../Y/str.html' title='Multiple used in 587 places.'>str</a>, <a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>-&gt;<a href='../Y/len.html' title='Multiple used in 1086 places.'>len</a>) &gt; 0))
<a id='L525' name='L525'></a> 525                     <strong class='reserved'>goto</strong> <a href='../Y/ok.html' title='Multiple used in 167 places.'>ok</a>;
<a id='L526' name='L526'></a> 526 
<a id='L527' name='L527'></a> 527             <em class='brace'>}</em>
<a id='L528' name='L528'></a> 528             <a href='../Y/got_sigpipe.html' title='Multiple used in 6 places.'>got_sigpipe</a> = 1;
<a id='L529' name='L529'></a> 529         <em class='brace'>}</em>
<a id='L530' name='L530'></a> 530         <a href='../Y/g_string_free.html' title='Multiple used in 150 places.'>g_string_free</a> (<a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>, <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>);
<a id='L531' name='L531'></a> 531         <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L532' name='L532'></a> 532         <strong class='reserved'>return</strong> <a href='../S/src--vfs--fish--fish.c.html#L102' title='Defined at 102 in src/vfs/fish/fish.c.'>TRANSIENT</a>;
<a id='L533' name='L533'></a> 533     <em class='brace'>}</em>
<a id='L534' name='L534'></a> 534 
<a id='L535' name='L535'></a> 535     <a href='../Y/retry.html' title='Multiple used in 9 places.'>retry</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L536' name='L536'></a> 536 
<a id='L537' name='L537'></a> 537   <a href='../Y/ok.html' title='Multiple used in 167 places.'>ok</a>:
<a id='L538' name='L538'></a> 538     <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L539' name='L539'></a> 539 
<a id='L540' name='L540'></a> 540     <strong class='reserved'>if</strong> (<a href='../Y/wait_reply.html' title='Multiple used in 11 places.'>wait_reply</a> != <a href='../D/NONE.html' title='Multiple defined in 3 places.'>NONE</a>)
<a id='L541' name='L541'></a> 541     <em class='brace'>{</em>
<a id='L542' name='L542'></a> 542         <a href='../Y/status.html' title='Multiple used in 157 places.'>status</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>,
<a id='L543' name='L543'></a> 543                                   (<a href='../Y/wait_reply.html' title='Multiple used in 11 places.'>wait_reply</a> &amp; <a href='../D/WANT_STRING.html' title='Multiple defined in 2 places.'>WANT_STRING</a>) != 0 ? <a href='../Y/reply_str.html' title='Multiple used in 10 places.'>reply_str</a> : <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>,
<a id='L544' name='L544'></a> 544                                   <strong class='reserved'>sizeof</strong> (<a href='../Y/reply_str.html' title='Multiple used in 10 places.'>reply_str</a>) - 1);
<a id='L545' name='L545'></a> 545         <strong class='reserved'>if</strong> ((<a href='../Y/wait_reply.html' title='Multiple used in 11 places.'>wait_reply</a> &amp; <a href='../D/WANT_STRING.html' title='Multiple defined in 2 places.'>WANT_STRING</a>) != 0 &amp;&amp; !<a href='../Y/retry.html' title='Multiple used in 9 places.'>retry</a> &amp;&amp; <a href='../Y/level.html' title='Multiple used in 49 places.'>level</a> == 0 &amp;&amp; <a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> == 421)
<a id='L546' name='L546'></a> 546         <em class='brace'>{</em>
<a id='L547' name='L547'></a> 547             <a href='../Y/retry.html' title='Multiple used in 9 places.'>retry</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L548' name='L548'></a> 548             <a href='../Y/level.html' title='Multiple used in 49 places.'>level</a> = 1;
<a id='L549' name='L549'></a> 549             <a href='../Y/status.html' title='Multiple used in 157 places.'>status</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L444' title='Defined at 444 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_reconnect</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>) ? 1 : 0;
<a id='L550' name='L550'></a> 550             <a href='../Y/level.html' title='Multiple used in 49 places.'>level</a> = 0;
<a id='L551' name='L551'></a> 551             <strong class='reserved'>if</strong> (<a href='../Y/status.html' title='Multiple used in 157 places.'>status</a> != 0 &amp;&amp; (<a href='../Y/write.html' title='Multiple used in 59 places.'>write</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>-&gt;<a href='../Y/str.html' title='Multiple used in 587 places.'>str</a>, <a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>-&gt;<a href='../Y/len.html' title='Multiple used in 1086 places.'>len</a>) &gt; 0))
<a id='L552' name='L552'></a> 552                 <strong class='reserved'>goto</strong> <a href='../Y/ok.html' title='Multiple used in 167 places.'>ok</a>;
<a id='L553' name='L553'></a> 553         <em class='brace'>}</em>
<a id='L554' name='L554'></a> 554         <a href='../Y/retry.html' title='Multiple used in 9 places.'>retry</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L555' name='L555'></a> 555         <a href='../Y/g_string_free.html' title='Multiple used in 150 places.'>g_string_free</a> (<a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>, <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>);
<a id='L556' name='L556'></a> 556         <strong class='reserved'>return</strong> <a href='../Y/status.html' title='Multiple used in 157 places.'>status</a>;
<a id='L557' name='L557'></a> 557     <em class='brace'>}</em>
<a id='L558' name='L558'></a> 558 
<a id='L559' name='L559'></a> 559     <a href='../Y/g_string_free.html' title='Multiple used in 150 places.'>g_string_free</a> (<a href='../Y/cmdstr.html' title='Multiple used in 12 places.'>cmdstr</a>, <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>);
<a id='L560' name='L560'></a> 560     <strong class='reserved'>return</strong> <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>;
<a id='L561' name='L561'></a> 561 <em class='brace'>}</em>
<a id='L562' name='L562'></a> 562 
<a id='L563' name='L563'></a> 563 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L564' name='L564'></a> 564 
<a id='L565' name='L565'></a> 565 <strong class='reserved'>static</strong> <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *
<a id='L566' name='L566'></a> 566 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2716' title='Referred from 2716 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_new_archive</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>)
     <em class='comment'>/* <a href='#L477'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L584'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+566 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L567' name='L567'></a> 567 <em class='brace'>{</em>
<a id='L568' name='L568'></a> 568     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/arch.html' title='Multiple used in 93 places.'>arch</a>;
<a id='L569' name='L569'></a> 569 
<a id='L570' name='L570'></a> 570     <a href='../Y/arch.html' title='Multiple used in 93 places.'>arch</a> = <a href='../Y/g_new0.html' title='Multiple used in 80 places.'>g_new0</a> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a>, 1);
<a id='L571' name='L571'></a> 571     <a href='../Y/arch.html' title='Multiple used in 93 places.'>arch</a>-&gt;<a href='../Y/base.html' title='Multiple used in 107 places.'>base</a>.<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a> = <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>;
<a id='L572' name='L572'></a> 572     <a href='../Y/arch.html' title='Multiple used in 93 places.'>arch</a>-&gt;<a href='../Y/base.html' title='Multiple used in 107 places.'>base</a>.<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../S/lib--global.h.html#L127' title='Defined at 127 in lib/global.h.'>PATH_SEP_STR</a>);
<a id='L573' name='L573'></a> 573     <a href='../Y/arch.html' title='Multiple used in 93 places.'>arch</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = -1;
<a id='L574' name='L574'></a> 574     <a href='../Y/arch.html' title='Multiple used in 93 places.'>arch</a>-&gt;<a href='../Y/use_passive_connection.html' title='Multiple used in 9 places.'>use_passive_connection</a> = <a href='../Y/ftpfs_use_passive_connections.html' title='Multiple used in 6 places.'>ftpfs_use_passive_connections</a>;
<a id='L575' name='L575'></a> 575     <a href='../Y/arch.html' title='Multiple used in 93 places.'>arch</a>-&gt;<a href='../Y/strict.html' title='Multiple used in 10 places.'>strict</a> = <a href='../Y/ftpfs_use_unix_list_options.html' title='Multiple used in 4 places.'>ftpfs_use_unix_list_options</a> ? <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L164' title='Defined at 164 in src/vfs/ftpfs/ftpfs.c.'>RFC_AUTODETECT</a> : <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L166' title='Defined at 166 in src/vfs/ftpfs/ftpfs.c.'>RFC_STRICT</a>;
<a id='L576' name='L576'></a> 576     <a href='../Y/arch.html' title='Multiple used in 93 places.'>arch</a>-&gt;<a href='../Y/isbinary.html' title='Multiple used in 7 places.'>isbinary</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L182' title='Defined at 182 in src/vfs/ftpfs/ftpfs.c.'>TYPE_UNKNOWN</a>;
<a id='L577' name='L577'></a> 577 
<a id='L578' name='L578'></a> 578     <strong class='reserved'>return</strong> <a href='../S/lib--vfs--xdirentry.h.html#L39' title='Defined at 39 in lib/vfs/xdirentry.h.'>VFS_SUPER</a> (<a href='../Y/arch.html' title='Multiple used in 93 places.'>arch</a>);
<a id='L579' name='L579'></a> 579 <em class='brace'>}</em>
<a id='L580' name='L580'></a> 580 
<a id='L581' name='L581'></a> 581 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L582' name='L582'></a> 582 
<a id='L583' name='L583'></a> 583 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L584' name='L584'></a> 584 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2718' title='Referred from 2718 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_free_archive</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)
     <em class='comment'>/* <a href='#L566'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L600'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+584 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L585' name='L585'></a> 585 <em class='brace'>{</em>
<a id='L586' name='L586'></a> 586     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L587' name='L587'></a> 587 
<a id='L588' name='L588'></a> 588     <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> != -1)
<a id='L589' name='L589'></a> 589     <em class='brace'>{</em>
<a id='L590' name='L590'></a> 590         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: Disconnecting from %s"), <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>);
<a id='L591' name='L591'></a> 591         <a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/NONE.html' title='Multiple defined in 3 places.'>NONE</a>, "%s", "QUIT");
<a id='L592' name='L592'></a> 592         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>);
<a id='L593' name='L593'></a> 593     <em class='brace'>}</em>
<a id='L594' name='L594'></a> 594     <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a>);
<a id='L595' name='L595'></a> 595 <em class='brace'>}</em>
<a id='L596' name='L596'></a> 596 
<a id='L597' name='L597'></a> 597 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L598' name='L598'></a> 598 
<a id='L599' name='L599'></a> 599 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L600' name='L600'></a> 600 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1398' title='Referred from 1398 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_changetype</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <strong class='reserved'>int</strong> <a href='../Y/binary.html' title='Multiple used in 5 places.'>binary</a>)
     <em class='comment'>/* <a href='#L584'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L615'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+600 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L601' name='L601'></a> 601 <em class='brace'>{</em>
<a id='L602' name='L602'></a> 602     <strong class='reserved'>if</strong> (<a href='../Y/binary.html' title='Multiple used in 5 places.'>binary</a> != <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/isbinary.html' title='Multiple used in 7 places.'>isbinary</a>)
<a id='L603' name='L603'></a> 603     <em class='brace'>{</em>
<a id='L604' name='L604'></a> 604         <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>, "TYPE %c", <a href='../Y/binary.html' title='Multiple used in 5 places.'>binary</a> ? 'I' : 'A') != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L605' name='L605'></a> 605             <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EIO.html' title='Multiple used in 28 places.'>EIO</a>, -1);
<a id='L606' name='L606'></a> 606         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/isbinary.html' title='Multiple used in 7 places.'>isbinary</a> = <a href='../Y/binary.html' title='Multiple used in 5 places.'>binary</a>;
<a id='L607' name='L607'></a> 607     <em class='brace'>}</em>
<a id='L608' name='L608'></a> 608     <strong class='reserved'>return</strong> <a href='../Y/binary.html' title='Multiple used in 5 places.'>binary</a>;
<a id='L609' name='L609'></a> 609 <em class='brace'>}</em>
<a id='L610' name='L610'></a> 610 
<a id='L611' name='L611'></a> 611 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L612' name='L612'></a> 612 <em class='comment'>/* This routine logs the user in */</em>
<a id='L613' name='L613'></a> 613 
<a id='L614' name='L614'></a> 614 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L615' name='L615'></a> 615 <a href='../R/ftpfs_login_server.html' title='Multiple referred from 3 places.'>ftpfs_login_server</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/netrcpass.html' title='Multiple used in 4 places.'>netrcpass</a>)
     <em class='comment'>/* <a href='#L600'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L738'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+615 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L616' name='L616'></a> 616 <em class='brace'>{</em>
<a id='L617' name='L617'></a> 617     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L618' name='L618'></a> 618     <strong class='reserved'>char</strong> *<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a>;
<a id='L619' name='L619'></a> 619     <strong class='reserved'>char</strong> *<a href='../Y/op.html' title='Multiple used in 59 places.'>op</a>;
<a id='L620' name='L620'></a> 620     <strong class='reserved'>char</strong> *<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>;                 <em class='comment'>/* login user name */</em>
<a id='L621' name='L621'></a> 621     <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/anon.html' title='Multiple used in 3 places.'>anon</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L622' name='L622'></a> 622     <strong class='reserved'>char</strong> <a href='../Y/reply_string.html' title='Multiple used in 3 places.'>reply_string</a>[<a href='../S/lib--global.h.html#L113' title='Defined at 113 in lib/global.h.'>BUF_MEDIUM</a>];
<a id='L623' name='L623'></a> 623 
<a id='L624' name='L624'></a> 624     <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/isbinary.html' title='Multiple used in 7 places.'>isbinary</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L182' title='Defined at 182 in src/vfs/ftpfs/ftpfs.c.'>TYPE_UNKNOWN</a>;
<a id='L625' name='L625'></a> 625 
<a id='L626' name='L626'></a> 626     <strong class='reserved'>if</strong> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/password.html' title='Multiple used in 55 places.'>password</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)  <em class='comment'>/* explicit password */</em>
<a id='L627' name='L627'></a> 627         <a href='../Y/op.html' title='Multiple used in 59 places.'>op</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/password.html' title='Multiple used in 55 places.'>password</a>);
<a id='L628' name='L628'></a> 628     <strong class='reserved'>else</strong> <strong class='reserved'>if</strong> (<a href='../Y/netrcpass.html' title='Multiple used in 4 places.'>netrcpass</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>) <em class='comment'>/* password from netrc */</em>
<a id='L629' name='L629'></a> 629         <a href='../Y/op.html' title='Multiple used in 59 places.'>op</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/netrcpass.html' title='Multiple used in 4 places.'>netrcpass</a>);
<a id='L630' name='L630'></a> 630     <strong class='reserved'>else</strong> <strong class='reserved'>if</strong> (<a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>, "anonymous") == 0
<a id='L631' name='L631'></a> 631              || <a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>, "ftp") == 0)
<a id='L632' name='L632'></a> 632     <em class='brace'>{</em>
<a id='L633' name='L633'></a> 633         <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_anonymous_passwd.html' title='Multiple used in 12 places.'>ftpfs_anonymous_passwd</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)     <em class='comment'>/* default anonymous password */</em>
<a id='L634' name='L634'></a> 634             <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2677' title='Defined at 2677 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_init_passwd</a> ();
<a id='L635' name='L635'></a> 635         <a href='../Y/op.html' title='Multiple used in 59 places.'>op</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/ftpfs_anonymous_passwd.html' title='Multiple used in 12 places.'>ftpfs_anonymous_passwd</a>);
<a id='L636' name='L636'></a> 636         <a href='../Y/anon.html' title='Multiple used in 3 places.'>anon</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L637' name='L637'></a> 637     <em class='brace'>}</em>
<a id='L638' name='L638'></a> 638     <strong class='reserved'>else</strong>
<a id='L639' name='L639'></a> 639     <em class='brace'>{</em>                           <em class='comment'>/* ask user */</em>
<a id='L640' name='L640'></a> 640         <strong class='reserved'>char</strong> *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>;
<a id='L641' name='L641'></a> 641 
<a id='L642' name='L642'></a> 642         <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = <a href='../Y/g_strdup_printf.html' title='Multiple used in 94 places.'>g_strdup_printf</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("FTP: Password required for %s"), <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>);
<a id='L643' name='L643'></a> 643         <a href='../Y/op.html' title='Multiple used in 59 places.'>op</a> = <a href='../S/lib--vfs--utilvfs.c.html#L363' title='Defined at 363 in lib/vfs/utilvfs.c.'>vfs_get_password</a> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>);
<a id='L644' name='L644'></a> 644         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>);
<a id='L645' name='L645'></a> 645         <strong class='reserved'>if</strong> (<a href='../Y/op.html' title='Multiple used in 59 places.'>op</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L646' name='L646'></a> 646             <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EPERM.html' title='Multiple used in 10 places.'>EPERM</a>, 0);
<a id='L647' name='L647'></a> 647         <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/password.html' title='Multiple used in 55 places.'>password</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/op.html' title='Multiple used in 59 places.'>op</a>);
<a id='L648' name='L648'></a> 648     <em class='brace'>}</em>
<a id='L649' name='L649'></a> 649 
<a id='L650' name='L650'></a> 650     <strong class='reserved'>if</strong> (!<a href='../Y/anon.html' title='Multiple used in 3 places.'>anon</a> || <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L651' name='L651'></a> 651         <a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a> = <a href='../Y/op.html' title='Multiple used in 59 places.'>op</a>;
<a id='L652' name='L652'></a> 652     <strong class='reserved'>else</strong>
<a id='L653' name='L653'></a> 653     <em class='brace'>{</em>
<a id='L654' name='L654'></a> 654         <a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a> = <a href='../Y/g_strconcat.html' title='Multiple used in 73 places.'>g_strconcat</a> ("-", <a href='../Y/op.html' title='Multiple used in 59 places.'>op</a>, (<strong class='reserved'>char</strong> *) <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>);
<a id='L655' name='L655'></a> 655         <a href='../S/lib--util.c.html#L940' title='Defined at 940 in lib/util.c.'>wipe_password</a> (<a href='../Y/op.html' title='Multiple used in 59 places.'>op</a>);
<a id='L656' name='L656'></a> 656     <em class='brace'>}</em>
<a id='L657' name='L657'></a> 657 
<a id='L658' name='L658'></a> 658     <em class='comment'>/* Proxy server accepts: username@host-we-want-to-connect */</em>
<a id='L659' name='L659'></a> 659     <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/proxy.html' title='Multiple used in 8 places.'>proxy</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L660' name='L660'></a> 660         <a href='../Y/name.html' title='Multiple used in 736 places.'>name</a> =
<a id='L661' name='L661'></a> 661             <a href='../Y/g_strconcat.html' title='Multiple used in 73 places.'>g_strconcat</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>, "@",
<a id='L662' name='L662'></a> 662                          <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>[0] ==
<a id='L663' name='L663'></a> 663                          '!' ? <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> + 1 : <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>,
<a id='L664' name='L664'></a> 664                          (<strong class='reserved'>char</strong> *) <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>);
<a id='L665' name='L665'></a> 665     <strong class='reserved'>else</strong>
<a id='L666' name='L666'></a> 666         <a href='../Y/name.html' title='Multiple used in 736 places.'>name</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>);
<a id='L667' name='L667'></a> 667 
<a id='L668' name='L668'></a> 668     <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/reply_string.html' title='Multiple used in 3 places.'>reply_string</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/reply_string.html' title='Multiple used in 3 places.'>reply_string</a>) - 1) == <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L669' name='L669'></a> 669     <em class='brace'>{</em>
<a id='L670' name='L670'></a> 670         <strong class='reserved'>char</strong> *<a href='../Y/reply_up.html' title='Multiple used in 5 places.'>reply_up</a>;
<a id='L671' name='L671'></a> 671 
<a id='L672' name='L672'></a> 672         <a href='../Y/reply_up.html' title='Multiple used in 5 places.'>reply_up</a> = <a href='../Y/g_ascii_strup.html' title='Multiple used in 3 places.'>g_ascii_strup</a> (<a href='../Y/reply_string.html' title='Multiple used in 3 places.'>reply_string</a>, -1);
<a id='L673' name='L673'></a> 673         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/remote_is_amiga.html' title='Multiple used in 4 places.'>remote_is_amiga</a> = <a href='../D/strstr.html' title='Multiple defined in 2 places.'>strstr</a> (<a href='../Y/reply_up.html' title='Multiple used in 5 places.'>reply_up</a>, "AMIGA") != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L674' name='L674'></a> 674         <strong class='reserved'>if</strong> (<a href='../D/strstr.html' title='Multiple defined in 2 places.'>strstr</a> (<a href='../Y/reply_up.html' title='Multiple used in 5 places.'>reply_up</a>, " SPFTP/1.0.0000 SERVER ") != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)       <em class='comment'>/* handles `LIST -la` in a weird way */</em>
<a id='L675' name='L675'></a> 675             <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/strict.html' title='Multiple used in 10 places.'>strict</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L166' title='Defined at 166 in src/vfs/ftpfs/ftpfs.c.'>RFC_STRICT</a>;
<a id='L676' name='L676'></a> 676         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/reply_up.html' title='Multiple used in 5 places.'>reply_up</a>);
<a id='L677' name='L677'></a> 677 
<a id='L678' name='L678'></a> 678         <strong class='reserved'>if</strong> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L679' name='L679'></a> 679         <em class='brace'>{</em>
<a id='L680' name='L680'></a> 680             <a href='../Y/fprintf.html' title='Multiple used in 106 places.'>fprintf</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>, "MC -- remote_is_amiga = %s\n",
<a id='L681' name='L681'></a> 681                      <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/remote_is_amiga.html' title='Multiple used in 4 places.'>remote_is_amiga</a> ? "yes" : "no");
<a id='L682' name='L682'></a> 682             <a href='../Y/fflush.html' title='Multiple used in 33 places.'>fflush</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>);
<a id='L683' name='L683'></a> 683         <em class='brace'>}</em>
<a id='L684' name='L684'></a> 684 
<a id='L685' name='L685'></a> 685         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: sending login name"));
<a id='L686' name='L686'></a> 686 
<a id='L687' name='L687'></a> 687         <strong class='reserved'>switch</strong> (<a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>, "USER %s", <a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>))
<a id='L688' name='L688'></a> 688         <em class='brace'>{</em>
<a id='L689' name='L689'></a> 689         <strong class='reserved'>case</strong> <a href='../S/src--vfs--fish--fish.c.html#L101' title='Defined at 101 in src/vfs/fish/fish.c.'>CONTINUE</a>:
<a id='L690' name='L690'></a> 690             <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: sending user password"));
<a id='L691' name='L691'></a> 691             <a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> = <a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>, "PASS %s", <a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a>);
<a id='L692' name='L692'></a> 692             <strong class='reserved'>if</strong> (<a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> == <a href='../S/src--vfs--fish--fish.c.html#L101' title='Defined at 101 in src/vfs/fish/fish.c.'>CONTINUE</a>)
<a id='L693' name='L693'></a> 693             <em class='brace'>{</em>
<a id='L694' name='L694'></a> 694                 <strong class='reserved'>char</strong> *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>;
<a id='L695' name='L695'></a> 695 
<a id='L696' name='L696'></a> 696                 <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = <a href='../Y/g_strdup_printf.html' title='Multiple used in 94 places.'>g_strdup_printf</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("FTP: Account required for user %s"),
<a id='L697' name='L697'></a> 697                                      <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>);
<a id='L698' name='L698'></a> 698                 <a href='../Y/op.html' title='Multiple used in 59 places.'>op</a> = <a href='../S/lib--widget--wtools.c.html#L503' title='Defined at 503 in lib/widget/wtools.c.'>input_dialog</a> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>, <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("Account:"), <a href='../S/src--history.h.html#L39' title='Defined at 39 in src/history.h.'>MC_HISTORY_FTPFS_ACCOUNT</a>, "",
<a id='L699' name='L699'></a> 699                                    <a href='../S/lib--widget--input.h.html#L37' title='Defined at 37 in lib/widget/input.h.'>INPUT_COMPLETE_USERNAMES</a>);
<a id='L700' name='L700'></a> 700                 <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>);
<a id='L701' name='L701'></a> 701                 <strong class='reserved'>if</strong> (<a href='../Y/op.html' title='Multiple used in 59 places.'>op</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L702' name='L702'></a> 702                     <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EPERM.html' title='Multiple used in 10 places.'>EPERM</a>, 0);
<a id='L703' name='L703'></a> 703                 <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: sending user account"));
<a id='L704' name='L704'></a> 704                 <a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> = <a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>, "ACCT %s", <a href='../Y/op.html' title='Multiple used in 59 places.'>op</a>);
<a id='L705' name='L705'></a> 705                 <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/op.html' title='Multiple used in 59 places.'>op</a>);
<a id='L706' name='L706'></a> 706             <em class='brace'>}</em>
<a id='L707' name='L707'></a> 707             <strong class='reserved'>if</strong> (<a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L708' name='L708'></a> 708                 <strong class='reserved'>break</strong>;
<a id='L709' name='L709'></a> 709 
<a id='L710' name='L710'></a> 710             <a href='../D/MC_FALLTHROUGH.html' title='Multiple defined in 2 places.'>MC_FALLTHROUGH</a>;
<a id='L711' name='L711'></a> 711 
<a id='L712' name='L712'></a> 712         <strong class='reserved'>case</strong> <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>:
<a id='L713' name='L713'></a> 713             <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: logged in"));
<a id='L714' name='L714'></a> 714             <a href='../S/lib--util.c.html#L940' title='Defined at 940 in lib/util.c.'>wipe_password</a> (<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a>);
<a id='L715' name='L715'></a> 715             <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>);
<a id='L716' name='L716'></a> 716             <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L717' name='L717'></a> 717 
<a id='L718' name='L718'></a> 718         <strong class='reserved'>default</strong>:
<a id='L719' name='L719'></a> 719             <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/failed_on_login.html' title='Multiple used in 4 places.'>failed_on_login</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L720' name='L720'></a> 720             <a href='../S/lib--util.c.html#L940' title='Defined at 940 in lib/util.c.'>wipe_password</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/password.html' title='Multiple used in 55 places.'>password</a>);
<a id='L721' name='L721'></a> 721             <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/password.html' title='Multiple used in 55 places.'>password</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L722' name='L722'></a> 722             <strong class='reserved'>goto</strong> <a href='../Y/login_fail.html' title='Multiple used in 2 places.'>login_fail</a>;
<a id='L723' name='L723'></a> 723         <em class='brace'>}</em>
<a id='L724' name='L724'></a> 724     <em class='brace'>}</em>
<a id='L725' name='L725'></a> 725 
<a id='L726' name='L726'></a> 726     <a href='../D/message.html' title='Multiple defined in 5 places.'>message</a> (<a href='../S/lib--widget--wtools.h.html#L31' title='Defined at 31 in lib/widget/wtools.h.'>D_ERROR</a>, <a href='../S/lib--widget--wtools.h.html#L14' title='Defined at 14 in lib/widget/wtools.h.'>MSG_ERROR</a>, <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: Login incorrect for user %s "),
<a id='L727' name='L727'></a> 727              <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>);
<a id='L728' name='L728'></a> 728 
<a id='L729' name='L729'></a> 729   <a href='../Y/login_fail.html' title='Multiple used in 2 places.'>login_fail</a>:
<a id='L730' name='L730'></a> 730     <a href='../S/lib--util.c.html#L940' title='Defined at 940 in lib/util.c.'>wipe_password</a> (<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a>);
<a id='L731' name='L731'></a> 731     <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>);
<a id='L732' name='L732'></a> 732     <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EPERM.html' title='Multiple used in 10 places.'>EPERM</a>, <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>);
<a id='L733' name='L733'></a> 733 <em class='brace'>}</em>
<a id='L734' name='L734'></a> 734 
<a id='L735' name='L735'></a> 735 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L736' name='L736'></a> 736 
<a id='L737' name='L737'></a> 737 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L738' name='L738'></a> 738 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L799' title='Referred from 799 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_load_no_proxy_list</a> (<strong class='reserved'>void</strong>)
     <em class='comment'>/* <a href='#L615'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L783'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+738 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L739' name='L739'></a> 739 <em class='brace'>{</em>
<a id='L740' name='L740'></a> 740     <em class='comment'>/* FixMe: shouldn't be hardcoded!!! */</em>
<a id='L741' name='L741'></a> 741     <strong class='reserved'>char</strong> *<a href='../Y/mc_file.html' title='Multiple used in 5 places.'>mc_file</a>;
<a id='L742' name='L742'></a> 742 
<a id='L743' name='L743'></a> 743     <a href='../Y/mc_file.html' title='Multiple used in 5 places.'>mc_file</a> = <a href='../Y/g_build_filename.html' title='Multiple used in 43 places.'>g_build_filename</a> (<a href='../Y/mc_global.html' title='Multiple used in 619 places.'>mc_global</a>.<a href='../Y/sysconfig_dir.html' title='Multiple used in 42 places.'>sysconfig_dir</a>, "mc.no_proxy", (<strong class='reserved'>char</strong> *) <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>);
<a id='L744' name='L744'></a> 744     <strong class='reserved'>if</strong> (<a href='../Y/exist_file.html' title='Multiple used in 38 places.'>exist_file</a> (<a href='../Y/mc_file.html' title='Multiple used in 5 places.'>mc_file</a>))
<a id='L745' name='L745'></a> 745     <em class='brace'>{</em>
<a id='L746' name='L746'></a> 746         <a href='../Y/FILE.html' title='Multiple used in 105 places.'>FILE</a> *<a href='../Y/npf.html' title='Multiple used in 6 places.'>npf</a>;
<a id='L747' name='L747'></a> 747 
<a id='L748' name='L748'></a> 748         <a href='../Y/npf.html' title='Multiple used in 6 places.'>npf</a> = <a href='../Y/fopen.html' title='Multiple used in 48 places.'>fopen</a> (<a href='../Y/mc_file.html' title='Multiple used in 5 places.'>mc_file</a>, "r");
<a id='L749' name='L749'></a> 749         <strong class='reserved'>if</strong> (<a href='../Y/npf.html' title='Multiple used in 6 places.'>npf</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L750' name='L750'></a> 750         <em class='brace'>{</em>
<a id='L751' name='L751'></a> 751             <strong class='reserved'>char</strong> <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>[<a href='../S/lib--global.h.html#L112' title='Defined at 112 in lib/global.h.'>BUF_LARGE</a>];  <em class='comment'>/* provide for BUF_LARGE characters */</em>
<a id='L752' name='L752'></a> 752 
<a id='L753' name='L753'></a> 753             <strong class='reserved'>while</strong> (<a href='../Y/fgets.html' title='Multiple used in 27 places.'>fgets</a> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>), <a href='../Y/npf.html' title='Multiple used in 6 places.'>npf</a>) != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L754' name='L754'></a> 754             <em class='brace'>{</em>
<a id='L755' name='L755'></a> 755                 <strong class='reserved'>char</strong> *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>;
<a id='L756' name='L756'></a> 756 
<a id='L757' name='L757'></a> 757                 <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = <a href='../D/strchr.html' title='Multiple defined in 2 places.'>strchr</a> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>, '\n');
<a id='L758' name='L758'></a> 758                 <strong class='reserved'>if</strong> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)  <em class='comment'>/* skip bogus entries */</em>
<a id='L759' name='L759'></a> 759                 <em class='brace'>{</em>
<a id='L760' name='L760'></a> 760                     <strong class='reserved'>int</strong> <a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a>;
<a id='L761' name='L761'></a> 761 
<a id='L762' name='L762'></a> 762                     <strong class='reserved'>while</strong> ((<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a> = <a href='../Y/fgetc.html' title='Multiple used in 6 places.'>fgetc</a> (<a href='../Y/npf.html' title='Multiple used in 6 places.'>npf</a>)) != <a href='../Y/EOF.html' title='Multiple used in 22 places.'>EOF</a> &amp;&amp; <a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a> != '\n')
<a id='L763' name='L763'></a> 763                         ;
<a id='L764' name='L764'></a> 764                 <em class='brace'>}</em>
<a id='L765' name='L765'></a> 765                 <strong class='reserved'>else</strong> <strong class='reserved'>if</strong> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> != <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>)
<a id='L766' name='L766'></a> 766                 <em class='brace'>{</em>
<a id='L767' name='L767'></a> 767                     *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = '\0';
<a id='L768' name='L768'></a> 768                     <a href='../Y/no_proxy.html' title='Multiple used in 4 places.'>no_proxy</a> = <a href='../Y/g_slist_prepend.html' title='Multiple used in 25 places.'>g_slist_prepend</a> (<a href='../Y/no_proxy.html' title='Multiple used in 4 places.'>no_proxy</a>, <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>));
<a id='L769' name='L769'></a> 769                 <em class='brace'>}</em>
<a id='L770' name='L770'></a> 770             <em class='brace'>}</em>
<a id='L771' name='L771'></a> 771 
<a id='L772' name='L772'></a> 772             <a href='../Y/fclose.html' title='Multiple used in 52 places.'>fclose</a> (<a href='../Y/npf.html' title='Multiple used in 6 places.'>npf</a>);
<a id='L773' name='L773'></a> 773         <em class='brace'>}</em>
<a id='L774' name='L774'></a> 774     <em class='brace'>}</em>
<a id='L775' name='L775'></a> 775 
<a id='L776' name='L776'></a> 776     <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/mc_file.html' title='Multiple used in 5 places.'>mc_file</a>);
<a id='L777' name='L777'></a> 777 <em class='brace'>}</em>
<a id='L778' name='L778'></a> 778 
<a id='L779' name='L779'></a> 779 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L780' name='L780'></a> 780 <em class='comment'>/* Return TRUE if FTP proxy should be used for this host, FALSE otherwise */</em>
<a id='L781' name='L781'></a> 781 
<a id='L782' name='L782'></a> 782 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a>
<a id='L783' name='L783'></a> 783 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1023' title='Referred from 1023 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_check_proxy</a> (<strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>)
     <em class='comment'>/* <a href='#L738'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L830'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+783 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L784' name='L784'></a> 784 <em class='brace'>{</em>
<a id='L785' name='L785'></a> 785     <a href='../Y/GSList.html' title='Multiple used in 57 places.'>GSList</a> *<a href='../Y/npe.html' title='Multiple used in 3 places.'>npe</a>;
<a id='L786' name='L786'></a> 786 
<a id='L787' name='L787'></a> 787     <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_proxy_host.html' title='Multiple used in 12 places.'>ftpfs_proxy_host</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a> || *<a href='../Y/ftpfs_proxy_host.html' title='Multiple used in 12 places.'>ftpfs_proxy_host</a> == '\0' || <a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a> || *<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> == '\0')
<a id='L788' name='L788'></a> 788         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;           <em class='comment'>/* sanity check */</em>
<a id='L789' name='L789'></a> 789 
<a id='L790' name='L790'></a> 790     <strong class='reserved'>if</strong> (*<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> == '!')
<a id='L791' name='L791'></a> 791         <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L792' name='L792'></a> 792 
<a id='L793' name='L793'></a> 793     <strong class='reserved'>if</strong> (!<a href='../Y/ftpfs_always_use_proxy.html' title='Multiple used in 6 places.'>ftpfs_always_use_proxy</a>)
<a id='L794' name='L794'></a> 794         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L795' name='L795'></a> 795 
<a id='L796' name='L796'></a> 796     <strong class='reserved'>if</strong> (<a href='../D/strchr.html' title='Multiple defined in 2 places.'>strchr</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, '.') == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L797' name='L797'></a> 797         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L798' name='L798'></a> 798 
<a id='L799' name='L799'></a> 799     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L738' title='Defined at 738 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_load_no_proxy_list</a> ();
<a id='L800' name='L800'></a> 800     <strong class='reserved'>for</strong> (<a href='../Y/npe.html' title='Multiple used in 3 places.'>npe</a> = <a href='../Y/no_proxy.html' title='Multiple used in 4 places.'>no_proxy</a>; <a href='../Y/npe.html' title='Multiple used in 3 places.'>npe</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>; <a href='../Y/npe.html' title='Multiple used in 3 places.'>npe</a> = <a href='../Y/g_slist_next.html' title='Multiple used in 15 places.'>g_slist_next</a> (<a href='../Y/npe.html' title='Multiple used in 3 places.'>npe</a>))
<a id='L801' name='L801'></a> 801     <em class='brace'>{</em>
<a id='L802' name='L802'></a> 802         <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a> = (<strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *) <a href='../Y/npe.html' title='Multiple used in 3 places.'>npe</a>-&gt;<a href='../Y/data.html' title='Multiple used in 912 places.'>data</a>;
<a id='L803' name='L803'></a> 803 
<a id='L804' name='L804'></a> 804         <strong class='reserved'>if</strong> (<a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a>[0] == '.')
<a id='L805' name='L805'></a> 805         <em class='brace'>{</em>
<a id='L806' name='L806'></a> 806             <a href='../Y/size_t.html' title='Multiple used in 726 places.'>size_t</a> <a href='../Y/ld.html' title='Multiple used in 5 places.'>ld</a>, <a href='../Y/lh.html' title='Multiple used in 4 places.'>lh</a>;
<a id='L807' name='L807'></a> 807 
<a id='L808' name='L808'></a> 808             <a href='../Y/ld.html' title='Multiple used in 5 places.'>ld</a> = <a href='../Y/strlen.html' title='Multiple used in 281 places.'>strlen</a> (<a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a>);
<a id='L809' name='L809'></a> 809             <a href='../Y/lh.html' title='Multiple used in 4 places.'>lh</a> = <a href='../Y/strlen.html' title='Multiple used in 281 places.'>strlen</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>);
<a id='L810' name='L810'></a> 810 
<a id='L811' name='L811'></a> 811             <strong class='reserved'>while</strong> (<a href='../Y/ld.html' title='Multiple used in 5 places.'>ld</a> != 0 &amp;&amp; <a href='../Y/lh.html' title='Multiple used in 4 places.'>lh</a> != 0 &amp;&amp; <a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>[<a href='../Y/lh.html' title='Multiple used in 4 places.'>lh</a> - 1] == <a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a>[<a href='../Y/ld.html' title='Multiple used in 5 places.'>ld</a> - 1])
<a id='L812' name='L812'></a> 812             <em class='brace'>{</em>
<a id='L813' name='L813'></a> 813                 <a href='../Y/ld.html' title='Multiple used in 5 places.'>ld</a>--;
<a id='L814' name='L814'></a> 814                 <a href='../Y/lh.html' title='Multiple used in 4 places.'>lh</a>--;
<a id='L815' name='L815'></a> 815             <em class='brace'>}</em>
<a id='L816' name='L816'></a> 816 
<a id='L817' name='L817'></a> 817             <strong class='reserved'>if</strong> (<a href='../Y/ld.html' title='Multiple used in 5 places.'>ld</a> == 0)
<a id='L818' name='L818'></a> 818                 <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L819' name='L819'></a> 819         <em class='brace'>}</em>
<a id='L820' name='L820'></a> 820         <strong class='reserved'>else</strong> <strong class='reserved'>if</strong> (<a href='../Y/g_ascii_strcasecmp.html' title='Multiple used in 16 places.'>g_ascii_strcasecmp</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a>) == 0)
<a id='L821' name='L821'></a> 821             <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L822' name='L822'></a> 822     <em class='brace'>}</em>
<a id='L823' name='L823'></a> 823 
<a id='L824' name='L824'></a> 824     <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L825' name='L825'></a> 825 <em class='brace'>}</em>
<a id='L826' name='L826'></a> 826 
<a id='L827' name='L827'></a> 827 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L828' name='L828'></a> 828 
<a id='L829' name='L829'></a> 829 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L830' name='L830'></a> 830 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L865' title='Referred from 865 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_proxy_host_and_port</a> (<strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/proxy.html' title='Multiple used in 8 places.'>proxy</a>, <strong class='reserved'>char</strong> **<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <strong class='reserved'>int</strong> *<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>)
     <em class='comment'>/* <a href='#L783'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L844'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+830 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L831' name='L831'></a> 831 <em class='brace'>{</em>
<a id='L832' name='L832'></a> 832     <a href='../S/lib--vfs--path.h.html#L54' title='Defined at 54 in lib/vfs/path.h.'>vfs_path_element_t</a> *<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>;
<a id='L833' name='L833'></a> 833 
<a id='L834' name='L834'></a> 834     <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a> = <a href='../S/lib--vfs--utilvfs.c.html#L232' title='Defined at 232 in lib/vfs/utilvfs.c.'>vfs_url_split</a> (<a href='../Y/proxy.html' title='Multiple used in 8 places.'>proxy</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L173' title='Defined at 173 in src/vfs/ftpfs/ftpfs.c.'>FTP_COMMAND_PORT</a>, <a href='../S/lib--vfs--utilvfs.h.html#L29' title='Defined at 29 in lib/vfs/utilvfs.h.'>URL_USE_ANONYMOUS</a>);
<a id='L835' name='L835'></a> 835     *<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> = <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>;
<a id='L836' name='L836'></a> 836     <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L837' name='L837'></a> 837     *<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> = <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>;
<a id='L838' name='L838'></a> 838     <a href='../S/lib--vfs--path.c.html#L882' title='Defined at 882 in lib/vfs/path.c.'>vfs_path_element_free</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>);
<a id='L839' name='L839'></a> 839 <em class='brace'>}</em>
<a id='L840' name='L840'></a> 840 
<a id='L841' name='L841'></a> 841 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L842' name='L842'></a> 842 
<a id='L843' name='L843'></a> 843 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L844' name='L844'></a> 844 <a href='../R/ftpfs_open_socket.html' title='Multiple referred from 3 places.'>ftpfs_open_socket</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)
     <em class='comment'>/* <a href='#L830'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L956'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+844 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L845' name='L845'></a> 845 <em class='brace'>{</em>
<a id='L846' name='L846'></a> 846     <strong class='reserved'>struct</strong> <a href='../Y/addrinfo.html' title='Multiple used in 2 places.'>addrinfo</a> <a href='../Y/hints.html' title='Multiple used in 16 places.'>hints</a>, *<a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>, *<a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a>;
<a id='L847' name='L847'></a> 847     <strong class='reserved'>int</strong> <a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a> = 0;
<a id='L848' name='L848'></a> 848     <strong class='reserved'>char</strong> *<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L849' name='L849'></a> 849     <strong class='reserved'>char</strong> <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>[8];
<a id='L850' name='L850'></a> 850     <strong class='reserved'>int</strong> <a href='../Y/tmp_port.html' title='Multiple used in 4 places.'>tmp_port</a> = 0;
<a id='L851' name='L851'></a> 851     <strong class='reserved'>int</strong> <a href='../Y/e.html' title='Multiple used in 194 places.'>e</a>;
<a id='L852' name='L852'></a> 852 
<a id='L853' name='L853'></a> 853     (<strong class='reserved'>void</strong>) <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>;
<a id='L854' name='L854'></a> 854 
<a id='L855' name='L855'></a> 855     <strong class='reserved'>if</strong> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a> || *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> == '\0')
<a id='L856' name='L856'></a> 856     <em class='brace'>{</em>
<a id='L857' name='L857'></a> 857         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: Invalid host name."));
<a id='L858' name='L858'></a> 858         <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/EINVAL.html' title='Multiple used in 13 places.'>EINVAL</a>;
<a id='L859' name='L859'></a> 859         <strong class='reserved'>return</strong> (-1);
<a id='L860' name='L860'></a> 860     <em class='brace'>}</em>
<a id='L861' name='L861'></a> 861 
<a id='L862' name='L862'></a> 862     <em class='comment'>/* Use a proxy host? */</em>
<a id='L863' name='L863'></a> 863     <em class='comment'>/* Hosts to connect to that start with a ! should use proxy */</em>
<a id='L864' name='L864'></a> 864     <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/proxy.html' title='Multiple used in 8 places.'>proxy</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L865' name='L865'></a> 865         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L830' title='Defined at 830 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_proxy_host_and_port</a> (<a href='../Y/ftpfs_proxy_host.html' title='Multiple used in 12 places.'>ftpfs_proxy_host</a>, &amp;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, &amp;<a href='../Y/tmp_port.html' title='Multiple used in 4 places.'>tmp_port</a>);
<a id='L866' name='L866'></a> 866     <strong class='reserved'>else</strong>
<a id='L867' name='L867'></a> 867     <em class='brace'>{</em>
<a id='L868' name='L868'></a> 868         <a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>);
<a id='L869' name='L869'></a> 869         <a href='../Y/tmp_port.html' title='Multiple used in 4 places.'>tmp_port</a> = <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>;
<a id='L870' name='L870'></a> 870     <em class='brace'>}</em>
<a id='L871' name='L871'></a> 871 
<a id='L872' name='L872'></a> 872     <a href='../Y/g_snprintf.html' title='Multiple used in 106 places.'>g_snprintf</a> (<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>), "%hu", (<strong class='reserved'>unsigned</strong> <strong class='reserved'>short</strong>) <a href='../Y/tmp_port.html' title='Multiple used in 4 places.'>tmp_port</a>);
<a id='L873' name='L873'></a> 873 
<a id='L874' name='L874'></a> 874     <a href='../S/lib--tty--tty.c.html#L141' title='Defined at 141 in lib/tty/tty.c.'>tty_enable_interrupt_key</a> ();        <em class='comment'>/* clear the interrupt flag */</em>
<a id='L875' name='L875'></a> 875 
<a id='L876' name='L876'></a> 876     <a href='../Y/memset.html' title='Multiple used in 162 places.'>memset</a> (&amp;<a href='../Y/hints.html' title='Multiple used in 16 places.'>hints</a>, 0, <strong class='reserved'>sizeof</strong> (<a href='../Y/hints.html' title='Multiple used in 16 places.'>hints</a>));
<a id='L877' name='L877'></a> 877     <a href='../Y/hints.html' title='Multiple used in 16 places.'>hints</a>.<a href='../Y/ai_family.html' title='Multiple used in 4 places.'>ai_family</a> = <a href='../Y/AF_UNSPEC.html' title='Multiple used in 2 places.'>AF_UNSPEC</a>;
<a id='L878' name='L878'></a> 878     <a href='../Y/hints.html' title='Multiple used in 16 places.'>hints</a>.<a href='../Y/ai_socktype.html' title='Multiple used in 4 places.'>ai_socktype</a> = <a href='../Y/SOCK_STREAM.html' title='Multiple used in 6 places.'>SOCK_STREAM</a>;
<a id='L879' name='L879'></a> 879 
<a id='L880' name='L880'></a> 880 <em class='sharp'>#ifdef</em> <a href='../Y/AI_ADDRCONFIG.html' title='Multiple used in 6 places.'>AI_ADDRCONFIG</a>
<a id='L881' name='L881'></a> 881     <em class='comment'>/* By default, only look up addresses using address types for</em>
<a id='L882' name='L882'></a> 882 <em class='comment'>     * which a local interface is configured (i.e. no IPv6 if no IPv6</em>
<a id='L883' name='L883'></a> 883 <em class='comment'>     * interfaces, likewise for IPv4 (see RFC 3493 for details). */</em>
<a id='L884' name='L884'></a> 884     <a href='../Y/hints.html' title='Multiple used in 16 places.'>hints</a>.<a href='../Y/ai_flags.html' title='Multiple used in 4 places.'>ai_flags</a> = <a href='../Y/AI_ADDRCONFIG.html' title='Multiple used in 6 places.'>AI_ADDRCONFIG</a>;
<a id='L885' name='L885'></a> 885 <em class='sharp'>#endif</em>
<a id='L886' name='L886'></a> 886 
<a id='L887' name='L887'></a> 887     <a href='../Y/e.html' title='Multiple used in 194 places.'>e</a> = <a href='../Y/getaddrinfo.html' title='Multiple used in 4 places.'>getaddrinfo</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>, &amp;<a href='../Y/hints.html' title='Multiple used in 16 places.'>hints</a>, &amp;<a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>);
<a id='L888' name='L888'></a> 888 
<a id='L889' name='L889'></a> 889 <em class='sharp'>#ifdef</em> <a href='../Y/AI_ADDRCONFIG.html' title='Multiple used in 6 places.'>AI_ADDRCONFIG</a>
<a id='L890' name='L890'></a> 890     <strong class='reserved'>if</strong> (<a href='../Y/e.html' title='Multiple used in 194 places.'>e</a> == <a href='../Y/EAI_BADFLAGS.html' title='Multiple used in 2 places.'>EAI_BADFLAGS</a>)
<a id='L891' name='L891'></a> 891     <em class='brace'>{</em>
<a id='L892' name='L892'></a> 892         <em class='comment'>/* Retry with no flags if AI_ADDRCONFIG was rejected. */</em>
<a id='L893' name='L893'></a> 893         <a href='../Y/hints.html' title='Multiple used in 16 places.'>hints</a>.<a href='../Y/ai_flags.html' title='Multiple used in 4 places.'>ai_flags</a> = 0;
<a id='L894' name='L894'></a> 894         <a href='../Y/e.html' title='Multiple used in 194 places.'>e</a> = <a href='../Y/getaddrinfo.html' title='Multiple used in 4 places.'>getaddrinfo</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>, &amp;<a href='../Y/hints.html' title='Multiple used in 16 places.'>hints</a>, &amp;<a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>);
<a id='L895' name='L895'></a> 895     <em class='brace'>}</em>
<a id='L896' name='L896'></a> 896 <em class='sharp'>#endif</em>
<a id='L897' name='L897'></a> 897 
<a id='L898' name='L898'></a> 898     *<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> = '\0';
<a id='L899' name='L899'></a> 899 
<a id='L900' name='L900'></a> 900     <strong class='reserved'>if</strong> (<a href='../Y/e.html' title='Multiple used in 194 places.'>e</a> != 0)
<a id='L901' name='L901'></a> 901     <em class='brace'>{</em>
<a id='L902' name='L902'></a> 902         <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L903' name='L903'></a> 903         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: %s"), <a href='../Y/gai_strerror.html' title='Multiple used in 2 places.'>gai_strerror</a> (<a href='../Y/e.html' title='Multiple used in 194 places.'>e</a>));
<a id='L904' name='L904'></a> 904         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>);
<a id='L905' name='L905'></a> 905         <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/EINVAL.html' title='Multiple used in 13 places.'>EINVAL</a>;
<a id='L906' name='L906'></a> 906         <strong class='reserved'>return</strong> (-1);
<a id='L907' name='L907'></a> 907     <em class='brace'>}</em>
<a id='L908' name='L908'></a> 908 
<a id='L909' name='L909'></a> 909     <strong class='reserved'>for</strong> (<a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a> = <a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>; <a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>; <a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a> = <a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a>-&gt;<a href='../Y/ai_next.html' title='Multiple used in 6 places.'>ai_next</a>)
<a id='L910' name='L910'></a> 910     <em class='brace'>{</em>
<a id='L911' name='L911'></a> 911         <a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a> = <a href='../Y/socket.html' title='Multiple used in 9 places.'>socket</a> (<a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a>-&gt;<a href='../Y/ai_family.html' title='Multiple used in 4 places.'>ai_family</a>, <a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a>-&gt;<a href='../Y/ai_socktype.html' title='Multiple used in 4 places.'>ai_socktype</a>, <a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a>-&gt;<a href='../Y/ai_protocol.html' title='Multiple used in 2 places.'>ai_protocol</a>);
<a id='L912' name='L912'></a> 912 
<a id='L913' name='L913'></a> 913         <strong class='reserved'>if</strong> (<a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a> &lt; 0)
<a id='L914' name='L914'></a> 914         <em class='brace'>{</em>
<a id='L915' name='L915'></a> 915             <strong class='reserved'>if</strong> (<a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a>-&gt;<a href='../Y/ai_next.html' title='Multiple used in 6 places.'>ai_next</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L916' name='L916'></a> 916                 <strong class='reserved'>continue</strong>;
<a id='L917' name='L917'></a> 917 
<a id='L918' name='L918'></a> 918             <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L919' name='L919'></a> 919             <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: %s"), <a href='../S/lib--util.c.html#L684' title='Defined at 684 in lib/util.c.'>unix_error_string</a> (<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a>));
<a id='L920' name='L920'></a> 920             <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>);
<a id='L921' name='L921'></a> 921             <a href='../Y/freeaddrinfo.html' title='Multiple used in 4 places.'>freeaddrinfo</a> (<a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>);
<a id='L922' name='L922'></a> 922             <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a>;
<a id='L923' name='L923'></a> 923             <strong class='reserved'>return</strong> (-1);
<a id='L924' name='L924'></a> 924         <em class='brace'>}</em>
<a id='L925' name='L925'></a> 925 
<a id='L926' name='L926'></a> 926         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: making connection to %s"), <a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>);
<a id='L927' name='L927'></a> 927         <a href='../S/lib--util.h.html#L25' title='Defined at 25 in lib/util.h.'>MC_PTR_FREE</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>);
<a id='L928' name='L928'></a> 928 
<a id='L929' name='L929'></a> 929         <strong class='reserved'>if</strong> (<a href='../Y/connect.html' title='Multiple used in 5 places.'>connect</a> (<a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>, <a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a>-&gt;<a href='../Y/ai_addr.html' title='Multiple used in 2 places.'>ai_addr</a>, <a href='../Y/curr_res.html' title='Multiple used in 10 places.'>curr_res</a>-&gt;<a href='../Y/ai_addrlen.html' title='Multiple used in 2 places.'>ai_addrlen</a>) &gt;= 0)
<a id='L930' name='L930'></a> 930             <strong class='reserved'>break</strong>;
<a id='L931' name='L931'></a> 931 
<a id='L932' name='L932'></a> 932         <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a>;
<a id='L933' name='L933'></a> 933         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>);
<a id='L934' name='L934'></a> 934 
<a id='L935' name='L935'></a> 935         <strong class='reserved'>if</strong> (<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a> == <a href='../Y/EINTR.html' title='Multiple used in 45 places.'>EINTR</a> &amp;&amp; <a href='../S/lib--tty--tty.c.html#L168' title='Defined at 168 in lib/tty/tty.c.'>tty_got_interrupt</a> ())
<a id='L936' name='L936'></a> 936             <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: connection interrupted by user"));
<a id='L937' name='L937'></a> 937         <strong class='reserved'>else</strong> <strong class='reserved'>if</strong> (<a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>-&gt;<a href='../Y/ai_next.html' title='Multiple used in 6 places.'>ai_next</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L938' name='L938'></a> 938             <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: connection to server failed: %s"),
<a id='L939' name='L939'></a> 939                                <a href='../S/lib--util.c.html#L684' title='Defined at 684 in lib/util.c.'>unix_error_string</a> (<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a>));
<a id='L940' name='L940'></a> 940         <strong class='reserved'>else</strong>
<a id='L941' name='L941'></a> 941             <strong class='reserved'>continue</strong>;
<a id='L942' name='L942'></a> 942 
<a id='L943' name='L943'></a> 943         <a href='../Y/freeaddrinfo.html' title='Multiple used in 4 places.'>freeaddrinfo</a> (<a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>);
<a id='L944' name='L944'></a> 944         <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L945' name='L945'></a> 945         <strong class='reserved'>return</strong> (-1);
<a id='L946' name='L946'></a> 946     <em class='brace'>}</em>
<a id='L947' name='L947'></a> 947 
<a id='L948' name='L948'></a> 948     <a href='../Y/freeaddrinfo.html' title='Multiple used in 4 places.'>freeaddrinfo</a> (<a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>);
<a id='L949' name='L949'></a> 949     <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L950' name='L950'></a> 950     <strong class='reserved'>return</strong> <a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>;
<a id='L951' name='L951'></a> 951 <em class='brace'>}</em>
<a id='L952' name='L952'></a> 952 
<a id='L953' name='L953'></a> 953 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L954' name='L954'></a> 954 
<a id='L955' name='L955'></a> 955 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L956' name='L956'></a> 956 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1028' title='Referred from 1028 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_archive_int</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)
     <em class='comment'>/* <a href='#L844'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1017'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+956 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L957' name='L957'></a> 957 <em class='brace'>{</em>
<a id='L958' name='L958'></a> 958     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L959' name='L959'></a> 959     <strong class='reserved'>int</strong> <a href='../Y/retry_seconds.html' title='Multiple used in 4 places.'>retry_seconds</a> = 0;
<a id='L960' name='L960'></a> 960 
<a id='L961' name='L961'></a> 961     <em class='comment'>/* We do not want to use the passive if we are using proxies */</em>
<a id='L962' name='L962'></a> 962     <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/proxy.html' title='Multiple used in 8 places.'>proxy</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L963' name='L963'></a> 963         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/use_passive_connection.html' title='Multiple used in 9 places.'>use_passive_connection</a> = <a href='../Y/ftpfs_use_passive_connections_over_proxy.html' title='Multiple used in 6 places.'>ftpfs_use_passive_connections_over_proxy</a>;
<a id='L964' name='L964'></a> 964 
<a id='L965' name='L965'></a> 965     <strong class='reserved'>do</strong>
<a id='L966' name='L966'></a> 966     <em class='brace'>{</em>
<a id='L967' name='L967'></a> 967         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/failed_on_login.html' title='Multiple used in 4 places.'>failed_on_login</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L968' name='L968'></a> 968 
<a id='L969' name='L969'></a> 969         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L844' title='Defined at 844 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_socket</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L970' name='L970'></a> 970         <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> == -1)
<a id='L971' name='L971'></a> 971             <strong class='reserved'>return</strong> (-1);
<a id='L972' name='L972'></a> 972 
<a id='L973' name='L973'></a> 973         <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L615' title='Defined at 615 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_login_server</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>))
<a id='L974' name='L974'></a> 974         <em class='brace'>{</em>
<a id='L975' name='L975'></a> 975             <em class='comment'>/* Logged in, no need to retry the connection */</em>
<a id='L976' name='L976'></a> 976             <strong class='reserved'>break</strong>;
<a id='L977' name='L977'></a> 977         <em class='brace'>}</em>
<a id='L978' name='L978'></a> 978 
<a id='L979' name='L979'></a> 979         <strong class='reserved'>if</strong> (!<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/failed_on_login.html' title='Multiple used in 4 places.'>failed_on_login</a>)
<a id='L980' name='L980'></a> 980             <strong class='reserved'>return</strong> (-1);
<a id='L981' name='L981'></a> 981 
<a id='L982' name='L982'></a> 982         <em class='comment'>/* Close only the socket descriptor */</em>
<a id='L983' name='L983'></a> 983         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>);
<a id='L984' name='L984'></a> 984 
<a id='L985' name='L985'></a> 985         <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_retry_seconds.html' title='Multiple used in 5 places.'>ftpfs_retry_seconds</a> != 0)
<a id='L986' name='L986'></a> 986         <em class='brace'>{</em>
<a id='L987' name='L987'></a> 987             <strong class='reserved'>int</strong> <a href='../Y/count_down.html' title='Multiple used in 3 places.'>count_down</a>;
<a id='L988' name='L988'></a> 988 
<a id='L989' name='L989'></a> 989             <a href='../Y/retry_seconds.html' title='Multiple used in 4 places.'>retry_seconds</a> = <a href='../Y/ftpfs_retry_seconds.html' title='Multiple used in 5 places.'>ftpfs_retry_seconds</a>;
<a id='L990' name='L990'></a> 990             <a href='../S/lib--tty--tty.c.html#L141' title='Defined at 141 in lib/tty/tty.c.'>tty_enable_interrupt_key</a> ();
<a id='L991' name='L991'></a> 991             <strong class='reserved'>for</strong> (<a href='../Y/count_down.html' title='Multiple used in 3 places.'>count_down</a> = <a href='../Y/retry_seconds.html' title='Multiple used in 4 places.'>retry_seconds</a>; <a href='../Y/count_down.html' title='Multiple used in 3 places.'>count_down</a> != 0; <a href='../Y/count_down.html' title='Multiple used in 3 places.'>count_down</a>--)
<a id='L992' name='L992'></a> 992             <em class='brace'>{</em>
<a id='L993' name='L993'></a> 993                 <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("Waiting to retry... %d (Control-G to cancel)"), <a href='../Y/count_down.html' title='Multiple used in 3 places.'>count_down</a>);
<a id='L994' name='L994'></a> 994                 <a href='../Y/sleep.html' title='Multiple used in 2 places.'>sleep</a> (1);
<a id='L995' name='L995'></a> 995                 <strong class='reserved'>if</strong> (<a href='../S/lib--tty--tty.c.html#L168' title='Defined at 168 in lib/tty/tty.c.'>tty_got_interrupt</a> ())
<a id='L996' name='L996'></a> 996                 <em class='brace'>{</em>
<a id='L997' name='L997'></a> 997                     <em class='comment'>/* ftpfs_errno = E; */</em>
<a id='L998' name='L998'></a> 998                     <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L999' name='L999'></a> 999                     <strong class='reserved'>return</strong> 0;
<a id='L1000' name='L1000'></a>1000                 <em class='brace'>}</em>
<a id='L1001' name='L1001'></a>1001             <em class='brace'>}</em>
<a id='L1002' name='L1002'></a>1002             <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L1003' name='L1003'></a>1003         <em class='brace'>}</em>
<a id='L1004' name='L1004'></a>1004     <em class='brace'>}</em>
<a id='L1005' name='L1005'></a>1005     <strong class='reserved'>while</strong> (<a href='../Y/retry_seconds.html' title='Multiple used in 4 places.'>retry_seconds</a> != 0);
<a id='L1006' name='L1006'></a>1006 
<a id='L1007' name='L1007'></a>1007     <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1057' title='Defined at 1057 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_current_directory</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L1008' name='L1008'></a>1008     <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1009' name='L1009'></a>1009         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../S/lib--global.h.html#L127' title='Defined at 127 in lib/global.h.'>PATH_SEP_STR</a>);
<a id='L1010' name='L1010'></a>1010 
<a id='L1011' name='L1011'></a>1011     <strong class='reserved'>return</strong> 0;
<a id='L1012' name='L1012'></a>1012 <em class='brace'>}</em>
<a id='L1013' name='L1013'></a>1013 
<a id='L1014' name='L1014'></a>1014 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1015' name='L1015'></a>1015 
<a id='L1016' name='L1016'></a>1016 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L1017' name='L1017'></a>1017 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2717' title='Referred from 2717 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_archive</a> (<strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
     <em class='comment'>/* <a href='#L956'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1034'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1017 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1018' name='L1018'></a>1018                     <strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L54' title='Defined at 54 in lib/vfs/path.h.'>vfs_path_element_t</a> * <a href='../Y/vpath_element.html' title='Multiple used in 51 places.'>vpath_element</a>)
<a id='L1019' name='L1019'></a>1019 <em class='brace'>{</em>
<a id='L1020' name='L1020'></a>1020     (<strong class='reserved'>void</strong>) <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>;
<a id='L1021' name='L1021'></a>1021 
<a id='L1022' name='L1022'></a>1022     <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L352' title='Defined at 352 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_correct_url_parameters</a> (<a href='../Y/vpath_element.html' title='Multiple used in 51 places.'>vpath_element</a>);
<a id='L1023' name='L1023'></a>1023     <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L783' title='Defined at 783 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_check_proxy</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>))
<a id='L1024' name='L1024'></a>1024         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/proxy.html' title='Multiple used in 8 places.'>proxy</a> = <a href='../Y/ftpfs_proxy_host.html' title='Multiple used in 12 places.'>ftpfs_proxy_host</a>;
<a id='L1025' name='L1025'></a>1025     <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/root.html' title='Multiple used in 73 places.'>root</a> =
<a id='L1026' name='L1026'></a>1026         <a href='../S/lib--vfs--direntry.c.html#L883' title='Defined at 883 in lib/vfs/direntry.c.'>vfs_s_new_inode</a> (<a href='../Y/vpath_element.html' title='Multiple used in 51 places.'>vpath_element</a>-&gt;<a href='../Y/class.html' title='Multiple used in 159 places.'>class</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L289' title='Defined at 289 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_default_stat</a> (<a href='../Y/vpath_element.html' title='Multiple used in 51 places.'>vpath_element</a>-&gt;<a href='../Y/class.html' title='Multiple used in 159 places.'>class</a>));
<a id='L1027' name='L1027'></a>1027 
<a id='L1028' name='L1028'></a>1028     <strong class='reserved'>return</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L956' title='Defined at 956 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_archive_int</a> (<a href='../Y/vpath_element.html' title='Multiple used in 51 places.'>vpath_element</a>-&gt;<a href='../Y/class.html' title='Multiple used in 159 places.'>class</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L1029' name='L1029'></a>1029 <em class='brace'>}</em>
<a id='L1030' name='L1030'></a>1030 
<a id='L1031' name='L1031'></a>1031 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1032' name='L1032'></a>1032 
<a id='L1033' name='L1033'></a>1033 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L1034' name='L1034'></a>1034 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2715' title='Referred from 2715 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_archive_same</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L54' title='Defined at 54 in lib/vfs/path.h.'>vfs_path_element_t</a> * <a href='../Y/vpath_element.html' title='Multiple used in 51 places.'>vpath_element</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
     <em class='comment'>/* <a href='#L1017'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1057'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1034 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1035' name='L1035'></a>1035                     <strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <strong class='reserved'>void</strong> *<a href='../Y/cookie.html' title='Multiple used in 17 places.'>cookie</a>)
<a id='L1036' name='L1036'></a>1036 <em class='brace'>{</em>
<a id='L1037' name='L1037'></a>1037     <a href='../S/lib--vfs--path.h.html#L54' title='Defined at 54 in lib/vfs/path.h.'>vfs_path_element_t</a> *<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>;
<a id='L1038' name='L1038'></a>1038     <strong class='reserved'>int</strong> <a href='../Y/result.html' title='Multiple used in 790 places.'>result</a>;
<a id='L1039' name='L1039'></a>1039 
<a id='L1040' name='L1040'></a>1040     (<strong class='reserved'>void</strong>) <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>;
<a id='L1041' name='L1041'></a>1041     (<strong class='reserved'>void</strong>) <a href='../Y/cookie.html' title='Multiple used in 17 places.'>cookie</a>;
<a id='L1042' name='L1042'></a>1042 
<a id='L1043' name='L1043'></a>1043     <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L352' title='Defined at 352 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_correct_url_parameters</a> (<a href='../Y/vpath_element.html' title='Multiple used in 51 places.'>vpath_element</a>);
<a id='L1044' name='L1044'></a>1044 
<a id='L1045' name='L1045'></a>1045     <a href='../Y/result.html' title='Multiple used in 790 places.'>result</a> = ((<a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>) == 0)
<a id='L1046' name='L1046'></a>1046               &amp;&amp; (<a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/user.html' title='Multiple used in 182 places.'>user</a>) == 0)
<a id='L1047' name='L1047'></a>1047               &amp;&amp; (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> == <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>)) ? 1 : 0;
<a id='L1048' name='L1048'></a>1048 
<a id='L1049' name='L1049'></a>1049     <a href='../S/lib--vfs--path.c.html#L882' title='Defined at 882 in lib/vfs/path.c.'>vfs_path_element_free</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>);
<a id='L1050' name='L1050'></a>1050     <strong class='reserved'>return</strong> <a href='../Y/result.html' title='Multiple used in 790 places.'>result</a>;
<a id='L1051' name='L1051'></a>1051 <em class='brace'>}</em>
<a id='L1052' name='L1052'></a>1052 
<a id='L1053' name='L1053'></a>1053 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1054' name='L1054'></a>1054 <em class='comment'>/* The returned directory should always contain a trailing slash */</em>
<a id='L1055' name='L1055'></a>1055 
<a id='L1056' name='L1056'></a>1056 <strong class='reserved'>static</strong> <strong class='reserved'>char</strong> *
<a id='L1057' name='L1057'></a>1057 <a href='../R/ftpfs_get_current_directory.html' title='Multiple referred from 2 places.'>ftpfs_get_current_directory</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)
     <em class='comment'>/* <a href='#L1034'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1106'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1057 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1058' name='L1058'></a>1058 <em class='brace'>{</em>
<a id='L1059' name='L1059'></a>1059     <strong class='reserved'>char</strong> <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>[<a href='../D/MC_MAXPATHLEN.html' title='Multiple defined in 2 places.'>MC_MAXPATHLEN</a> + 1];
<a id='L1060' name='L1060'></a>1060 
<a id='L1061' name='L1061'></a>1061     <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/NONE.html' title='Multiple defined in 3 places.'>NONE</a>, "%s", "PWD") == <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a> &amp;&amp;
<a id='L1062' name='L1062'></a>1062         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>)) == <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L1063' name='L1063'></a>1063     <em class='brace'>{</em>
<a id='L1064' name='L1064'></a>1064         <strong class='reserved'>char</strong> *<a href='../Y/bufp.html' title='Multiple used in 7 places.'>bufp</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L1065' name='L1065'></a>1065         <strong class='reserved'>char</strong> *<a href='../Y/bufq.html' title='Multiple used in 8 places.'>bufq</a>;
<a id='L1066' name='L1066'></a>1066 
<a id='L1067' name='L1067'></a>1067         <strong class='reserved'>for</strong> (<a href='../Y/bufq.html' title='Multiple used in 8 places.'>bufq</a> = <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>; *<a href='../Y/bufq.html' title='Multiple used in 8 places.'>bufq</a> != '\0'; <a href='../Y/bufq.html' title='Multiple used in 8 places.'>bufq</a>++)
<a id='L1068' name='L1068'></a>1068             <strong class='reserved'>if</strong> (*<a href='../Y/bufq.html' title='Multiple used in 8 places.'>bufq</a> == '"')
<a id='L1069' name='L1069'></a>1069             <em class='brace'>{</em>
<a id='L1070' name='L1070'></a>1070                 <strong class='reserved'>if</strong> (<a href='../Y/bufp.html' title='Multiple used in 7 places.'>bufp</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1071' name='L1071'></a>1071                     <a href='../Y/bufp.html' title='Multiple used in 7 places.'>bufp</a> = <a href='../Y/bufq.html' title='Multiple used in 8 places.'>bufq</a> + 1;
<a id='L1072' name='L1072'></a>1072                 <strong class='reserved'>else</strong>
<a id='L1073' name='L1073'></a>1073                 <em class='brace'>{</em>
<a id='L1074' name='L1074'></a>1074                     *<a href='../Y/bufq.html' title='Multiple used in 8 places.'>bufq</a> = '\0';
<a id='L1075' name='L1075'></a>1075 
<a id='L1076' name='L1076'></a>1076                     <strong class='reserved'>if</strong> (*<a href='../Y/bufp.html' title='Multiple used in 7 places.'>bufp</a> != '\0')
<a id='L1077' name='L1077'></a>1077                     <em class='brace'>{</em>
<a id='L1078' name='L1078'></a>1078                         <strong class='reserved'>if</strong> (!<a href='../S/lib--global.h.html#L128' title='Defined at 128 in lib/global.h.'>IS_PATH_SEP</a> (<a href='../Y/bufq.html' title='Multiple used in 8 places.'>bufq</a>[-1]))
<a id='L1079' name='L1079'></a>1079                         <em class='brace'>{</em>
<a id='L1080' name='L1080'></a>1080                             *<a href='../Y/bufq.html' title='Multiple used in 8 places.'>bufq</a>++ = <a href='../S/lib--global.h.html#L126' title='Defined at 126 in lib/global.h.'>PATH_SEP</a>;
<a id='L1081' name='L1081'></a>1081                             *<a href='../Y/bufq.html' title='Multiple used in 8 places.'>bufq</a> = '\0';
<a id='L1082' name='L1082'></a>1082                         <em class='brace'>}</em>
<a id='L1083' name='L1083'></a>1083 
<a id='L1084' name='L1084'></a>1084                         <strong class='reserved'>if</strong> (<a href='../S/lib--global.h.html#L128' title='Defined at 128 in lib/global.h.'>IS_PATH_SEP</a> (*<a href='../Y/bufp.html' title='Multiple used in 7 places.'>bufp</a>))
<a id='L1085' name='L1085'></a>1085                             <strong class='reserved'>return</strong> <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/bufp.html' title='Multiple used in 7 places.'>bufp</a>);
<a id='L1086' name='L1086'></a>1086 
<a id='L1087' name='L1087'></a>1087                         <em class='comment'>/* If the remote server is an Amiga a leading slash</em>
<a id='L1088' name='L1088'></a>1088 <em class='comment'>                           might be missing. MC needs it because it is used</em>
<a id='L1089' name='L1089'></a>1089 <em class='comment'>                           as separator between hostname and path internally. */</em>
<a id='L1090' name='L1090'></a>1090                         <strong class='reserved'>return</strong> <a href='../Y/g_strconcat.html' title='Multiple used in 73 places.'>g_strconcat</a> (<a href='../S/lib--global.h.html#L127' title='Defined at 127 in lib/global.h.'>PATH_SEP_STR</a>, <a href='../Y/bufp.html' title='Multiple used in 7 places.'>bufp</a>, (<strong class='reserved'>char</strong> *) <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>);
<a id='L1091' name='L1091'></a>1091                     <em class='brace'>}</em>
<a id='L1092' name='L1092'></a>1092 
<a id='L1093' name='L1093'></a>1093                     <strong class='reserved'>break</strong>;
<a id='L1094' name='L1094'></a>1094                 <em class='brace'>}</em>
<a id='L1095' name='L1095'></a>1095             <em class='brace'>}</em>
<a id='L1096' name='L1096'></a>1096     <em class='brace'>}</em>
<a id='L1097' name='L1097'></a>1097 
<a id='L1098' name='L1098'></a>1098     <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/EIO.html' title='Multiple used in 28 places.'>EIO</a>;
<a id='L1099' name='L1099'></a>1099     <strong class='reserved'>return</strong> <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L1100' name='L1100'></a>1100 <em class='brace'>}</em>
<a id='L1101' name='L1101'></a>1101 
<a id='L1102' name='L1102'></a>1102 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1103' name='L1103'></a>1103 <em class='comment'>/* Setup Passive PASV FTP connection */</em>
<a id='L1104' name='L1104'></a>1104 
<a id='L1105' name='L1105'></a>1105 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a>
<a id='L1106' name='L1106'></a>1106 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1193' title='Referred from 1193 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_setup_passive_pasv</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
     <em class='comment'>/* <a href='#L1057'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1144'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1106 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1107' name='L1107'></a>1107                           <strong class='reserved'>int</strong> <a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>, <strong class='reserved'>struct</strong> <a href='../Y/sockaddr_storage.html' title='Multiple used in 7 places.'>sockaddr_storage</a> *<a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L188' title='Defined at 188 in src/vfs/ftpfs/ftpfs.c.'>socklen_t</a> * <a href='../Y/salen.html' title='Multiple used in 8 places.'>salen</a>)
<a id='L1108' name='L1108'></a>1108 <em class='brace'>{</em>
<a id='L1109' name='L1109'></a>1109     <strong class='reserved'>char</strong> *<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a>;
<a id='L1110' name='L1110'></a>1110     <strong class='reserved'>char</strong> <a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>[6];
<a id='L1111' name='L1111'></a>1111     <strong class='reserved'>int</strong> <a href='../Y/xa.html' title='Multiple used in 3 places.'>xa</a>, <a href='../Y/xb.html' title='Multiple used in 3 places.'>xb</a>, <a href='../Y/xc.html' title='Multiple used in 3 places.'>xc</a>, <a href='../Y/xd.html' title='Multiple used in 3 places.'>xd</a>, <a href='../Y/xe.html' title='Multiple used in 3 places.'>xe</a>, <a href='../Y/xf.html' title='Multiple used in 3 places.'>xf</a>;
<a id='L1112' name='L1112'></a>1112 
<a id='L1113' name='L1113'></a>1113     <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a> | <a href='../D/WANT_STRING.html' title='Multiple defined in 2 places.'>WANT_STRING</a>, "%s", "PASV") != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L1114' name='L1114'></a>1114         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1115' name='L1115'></a>1115 
<a id='L1116' name='L1116'></a>1116     <em class='comment'>/* Parse remote parameters */</em>
<a id='L1117' name='L1117'></a>1117     <strong class='reserved'>for</strong> (<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a> = <a href='../Y/reply_str.html' title='Multiple used in 10 places.'>reply_str</a> + 4; *<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a> != '\0' &amp;&amp; !<a href='../Y/isdigit.html' title='Multiple used in 22 places.'>isdigit</a> ((<strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong>) *<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a>); <a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a>++)
<a id='L1118' name='L1118'></a>1118         ;
<a id='L1119' name='L1119'></a>1119 
<a id='L1120' name='L1120'></a>1120     <strong class='reserved'>if</strong> (*<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a> == '\0' || !<a href='../Y/isdigit.html' title='Multiple used in 22 places.'>isdigit</a> ((<strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong>) *<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a>))
<a id='L1121' name='L1121'></a>1121         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1122' name='L1122'></a>1122 
<a id='L1123' name='L1123'></a>1123     <em class='comment'>/* cppcheck-suppress invalidscanf */</em>
<a id='L1124' name='L1124'></a>1124     <strong class='reserved'>if</strong> (<a href='../Y/sscanf.html' title='Multiple used in 28 places.'>sscanf</a> (<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a>, "%d,%d,%d,%d,%d,%d", &amp;<a href='../Y/xa.html' title='Multiple used in 3 places.'>xa</a>, &amp;<a href='../Y/xb.html' title='Multiple used in 3 places.'>xb</a>, &amp;<a href='../Y/xc.html' title='Multiple used in 3 places.'>xc</a>, &amp;<a href='../Y/xd.html' title='Multiple used in 3 places.'>xd</a>, &amp;<a href='../Y/xe.html' title='Multiple used in 3 places.'>xe</a>, &amp;<a href='../Y/xf.html' title='Multiple used in 3 places.'>xf</a>) != 6)
<a id='L1125' name='L1125'></a>1125         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1126' name='L1126'></a>1126 
<a id='L1127' name='L1127'></a>1127     <a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>[0] = (<strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong>) <a href='../Y/xa.html' title='Multiple used in 3 places.'>xa</a>;
<a id='L1128' name='L1128'></a>1128     <a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>[1] = (<strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong>) <a href='../Y/xb.html' title='Multiple used in 3 places.'>xb</a>;
<a id='L1129' name='L1129'></a>1129     <a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>[2] = (<strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong>) <a href='../Y/xc.html' title='Multiple used in 3 places.'>xc</a>;
<a id='L1130' name='L1130'></a>1130     <a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>[3] = (<strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong>) <a href='../Y/xd.html' title='Multiple used in 3 places.'>xd</a>;
<a id='L1131' name='L1131'></a>1131     <a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>[4] = (<strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong>) <a href='../Y/xe.html' title='Multiple used in 3 places.'>xe</a>;
<a id='L1132' name='L1132'></a>1132     <a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>[5] = (<strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong>) <a href='../Y/xf.html' title='Multiple used in 3 places.'>xf</a>;
<a id='L1133' name='L1133'></a>1133 
<a id='L1134' name='L1134'></a>1134     <a href='../Y/memcpy.html' title='Multiple used in 84 places.'>memcpy</a> (&amp;(((<strong class='reserved'>struct</strong> <a href='../Y/sockaddr_in.html' title='Multiple used in 22 places.'>sockaddr_in</a> *) <a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>)-&gt;<a href='../Y/sin_addr.html' title='Multiple used in 21 places.'>sin_addr</a>.<a href='../Y/s_addr.html' title='Multiple used in 27 places.'>s_addr</a>), (<strong class='reserved'>void</strong> *) <a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>, 4);
<a id='L1135' name='L1135'></a>1135     <a href='../Y/memcpy.html' title='Multiple used in 84 places.'>memcpy</a> (&amp;(((<strong class='reserved'>struct</strong> <a href='../Y/sockaddr_in.html' title='Multiple used in 22 places.'>sockaddr_in</a> *) <a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>)-&gt;<a href='../Y/sin_port.html' title='Multiple used in 9 places.'>sin_port</a>), (<strong class='reserved'>void</strong> *) &amp;<a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>[4], 2);
<a id='L1136' name='L1136'></a>1136 
<a id='L1137' name='L1137'></a>1137     <strong class='reserved'>return</strong> (<a href='../Y/connect.html' title='Multiple used in 5 places.'>connect</a> (<a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>, (<strong class='reserved'>struct</strong> <a href='../Y/sockaddr.html' title='Multiple used in 15 places.'>sockaddr</a> *) <a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>, *<a href='../Y/salen.html' title='Multiple used in 8 places.'>salen</a>) &gt;= 0);
<a id='L1138' name='L1138'></a>1138 <em class='brace'>}</em>
<a id='L1139' name='L1139'></a>1139 
<a id='L1140' name='L1140'></a>1140 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1141' name='L1141'></a>1141 <em class='comment'>/* Setup Passive EPSV FTP connection */</em>
<a id='L1142' name='L1142'></a>1142 
<a id='L1143' name='L1143'></a>1143 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a>
<a id='L1144' name='L1144'></a>1144 <a href='../R/ftpfs_setup_passive_epsv.html' title='Multiple referred from 2 places.'>ftpfs_setup_passive_epsv</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
     <em class='comment'>/* <a href='#L1106'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1187'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1144 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1145' name='L1145'></a>1145                           <strong class='reserved'>int</strong> <a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>, <strong class='reserved'>struct</strong> <a href='../Y/sockaddr_storage.html' title='Multiple used in 7 places.'>sockaddr_storage</a> *<a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L188' title='Defined at 188 in src/vfs/ftpfs/ftpfs.c.'>socklen_t</a> * <a href='../Y/salen.html' title='Multiple used in 8 places.'>salen</a>)
<a id='L1146' name='L1146'></a>1146 <em class='brace'>{</em>
<a id='L1147' name='L1147'></a>1147     <strong class='reserved'>char</strong> *<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a>;
<a id='L1148' name='L1148'></a>1148     <strong class='reserved'>int</strong> <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>;
<a id='L1149' name='L1149'></a>1149 
<a id='L1150' name='L1150'></a>1150     <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a> | <a href='../D/WANT_STRING.html' title='Multiple defined in 2 places.'>WANT_STRING</a>, "%s", "EPSV") != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L1151' name='L1151'></a>1151         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1152' name='L1152'></a>1152 
<a id='L1153' name='L1153'></a>1153     <em class='comment'>/* (|||&lt;port&gt;|) */</em>
<a id='L1154' name='L1154'></a>1154     <a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a> = <a href='../D/strchr.html' title='Multiple defined in 2 places.'>strchr</a> (<a href='../Y/reply_str.html' title='Multiple used in 10 places.'>reply_str</a>, '|');
<a id='L1155' name='L1155'></a>1155     <strong class='reserved'>if</strong> (<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1156' name='L1156'></a>1156         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1157' name='L1157'></a>1157     <strong class='reserved'>if</strong> (<a href='../Y/strlen.html' title='Multiple used in 281 places.'>strlen</a> (<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a>) &gt; 3)
<a id='L1158' name='L1158'></a>1158         <a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a> += 3;
<a id='L1159' name='L1159'></a>1159     <strong class='reserved'>else</strong>
<a id='L1160' name='L1160'></a>1160         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1161' name='L1161'></a>1161 
<a id='L1162' name='L1162'></a>1162     <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> = <a href='../Y/atoi.html' title='Multiple used in 20 places.'>atoi</a> (<a href='../Y/c.html' title='Multiple used in 1020 places.'>c</a>);
<a id='L1163' name='L1163'></a>1163     <strong class='reserved'>if</strong> (<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> &lt; 0 || <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> &gt; 65535)
<a id='L1164' name='L1164'></a>1164         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1165' name='L1165'></a>1165 
<a id='L1166' name='L1166'></a>1166     <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> = <a href='../Y/htons.html' title='Multiple used in 5 places.'>htons</a> (<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>);
<a id='L1167' name='L1167'></a>1167 
<a id='L1168' name='L1168'></a>1168     <strong class='reserved'>switch</strong> (<a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>-&gt;<a href='../Y/ss_family.html' title='Multiple used in 5 places.'>ss_family</a>)
<a id='L1169' name='L1169'></a>1169     <em class='brace'>{</em>
<a id='L1170' name='L1170'></a>1170     <strong class='reserved'>case</strong> <a href='../Y/AF_INET.html' title='Multiple used in 11 places.'>AF_INET</a>:
<a id='L1171' name='L1171'></a>1171         ((<strong class='reserved'>struct</strong> <a href='../Y/sockaddr_in.html' title='Multiple used in 22 places.'>sockaddr_in</a> *) <a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>)-&gt;<a href='../Y/sin_port.html' title='Multiple used in 9 places.'>sin_port</a> = <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>;
<a id='L1172' name='L1172'></a>1172         <strong class='reserved'>break</strong>;
<a id='L1173' name='L1173'></a>1173     <strong class='reserved'>case</strong> <a href='../Y/AF_INET6.html' title='Multiple used in 3 places.'>AF_INET6</a>:
<a id='L1174' name='L1174'></a>1174         ((<strong class='reserved'>struct</strong> <a href='../Y/sockaddr_in6.html' title='Multiple used in 3 places.'>sockaddr_in6</a> *) <a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>)-&gt;<a href='../Y/sin6_port.html' title='Multiple used in 3 places.'>sin6_port</a> = <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>;
<a id='L1175' name='L1175'></a>1175         <strong class='reserved'>break</strong>;
<a id='L1176' name='L1176'></a>1176     <strong class='reserved'>default</strong>:
<a id='L1177' name='L1177'></a>1177         <strong class='reserved'>break</strong>;
<a id='L1178' name='L1178'></a>1178     <em class='brace'>}</em>
<a id='L1179' name='L1179'></a>1179 
<a id='L1180' name='L1180'></a>1180     <strong class='reserved'>return</strong> (<a href='../Y/connect.html' title='Multiple used in 5 places.'>connect</a> (<a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>, (<strong class='reserved'>struct</strong> <a href='../Y/sockaddr.html' title='Multiple used in 15 places.'>sockaddr</a> *) <a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>, *<a href='../Y/salen.html' title='Multiple used in 8 places.'>salen</a>) &gt;= 0);
<a id='L1181' name='L1181'></a>1181 <em class='brace'>}</em>
<a id='L1182' name='L1182'></a>1182 
<a id='L1183' name='L1183'></a>1183 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1184' name='L1184'></a>1184 <em class='comment'>/* Setup Passive ftp connection, we use it for source routed connections */</em>
<a id='L1185' name='L1185'></a>1185 
<a id='L1186' name='L1186'></a>1186 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a>
<a id='L1187' name='L1187'></a>1187 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1345' title='Referred from 1345 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_setup_passive</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
     <em class='comment'>/* <a href='#L1144'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1209'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1187 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1188' name='L1188'></a>1188                      <strong class='reserved'>int</strong> <a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>, <strong class='reserved'>struct</strong> <a href='../Y/sockaddr_storage.html' title='Multiple used in 7 places.'>sockaddr_storage</a> *<a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L188' title='Defined at 188 in src/vfs/ftpfs/ftpfs.c.'>socklen_t</a> * <a href='../Y/salen.html' title='Multiple used in 8 places.'>salen</a>)
<a id='L1189' name='L1189'></a>1189 <em class='brace'>{</em>
<a id='L1190' name='L1190'></a>1190     <em class='comment'>/* It's IPV4, so try PASV first, some servers and ALGs get confused by EPSV */</em>
<a id='L1191' name='L1191'></a>1191     <strong class='reserved'>if</strong> (<a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>-&gt;<a href='../Y/ss_family.html' title='Multiple used in 5 places.'>ss_family</a> == <a href='../Y/AF_INET.html' title='Multiple used in 11 places.'>AF_INET</a>)
<a id='L1192' name='L1192'></a>1192     <em class='brace'>{</em>
<a id='L1193' name='L1193'></a>1193         <strong class='reserved'>if</strong> (!<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1106' title='Defined at 1106 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_setup_passive_pasv</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>, <a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>, <a href='../Y/salen.html' title='Multiple used in 8 places.'>salen</a>))
<a id='L1194' name='L1194'></a>1194             <em class='comment'>/* An IPV4 FTP server might support EPSV, so if PASV fails we can try EPSV anyway */</em>
<a id='L1195' name='L1195'></a>1195             <strong class='reserved'>if</strong> (!<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1144' title='Defined at 1144 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_setup_passive_epsv</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>, <a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>, <a href='../Y/salen.html' title='Multiple used in 8 places.'>salen</a>))
<a id='L1196' name='L1196'></a>1196                 <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1197' name='L1197'></a>1197     <em class='brace'>}</em>
<a id='L1198' name='L1198'></a>1198     <em class='comment'>/* It's IPV6, so EPSV is our only hope */</em>
<a id='L1199' name='L1199'></a>1199     <strong class='reserved'>else</strong> <strong class='reserved'>if</strong> (!<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1144' title='Defined at 1144 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_setup_passive_epsv</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/my_socket.html' title='Multiple used in 23 places.'>my_socket</a>, <a href='../Y/sa.html' title='Multiple used in 27 places.'>sa</a>, <a href='../Y/salen.html' title='Multiple used in 8 places.'>salen</a>))
<a id='L1200' name='L1200'></a>1200         <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1201' name='L1201'></a>1201 
<a id='L1202' name='L1202'></a>1202     <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L1203' name='L1203'></a>1203 <em class='brace'>}</em>
<a id='L1204' name='L1204'></a>1204 
<a id='L1205' name='L1205'></a>1205 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1206' name='L1206'></a>1206 <em class='comment'>/* Setup Active PORT or EPRT FTP connection */</em>
<a id='L1207' name='L1207'></a>1207 
<a id='L1208' name='L1208'></a>1208 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L1209' name='L1209'></a>1209 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1366' title='Referred from 1366 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_setup_active</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
     <em class='comment'>/* <a href='#L1187'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1279'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1209 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1210' name='L1210'></a>1210                     <strong class='reserved'>struct</strong> <a href='../Y/sockaddr_storage.html' title='Multiple used in 7 places.'>sockaddr_storage</a> <a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L188' title='Defined at 188 in src/vfs/ftpfs/ftpfs.c.'>socklen_t</a> <a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>)
<a id='L1211' name='L1211'></a>1211 <em class='brace'>{</em>
<a id='L1212' name='L1212'></a>1212     <strong class='reserved'>unsigned</strong> <strong class='reserved'>short</strong> <strong class='reserved'>int</strong> <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>;
<a id='L1213' name='L1213'></a>1213     <strong class='reserved'>char</strong> *<a href='../Y/addr.html' title='Multiple used in 39 places.'>addr</a>;
<a id='L1214' name='L1214'></a>1214     <strong class='reserved'>unsigned</strong> <strong class='reserved'>int</strong> <a href='../Y/af.html' title='Multiple used in 5 places.'>af</a>;
<a id='L1215' name='L1215'></a>1215     <strong class='reserved'>int</strong> <a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>;
<a id='L1216' name='L1216'></a>1216 
<a id='L1217' name='L1217'></a>1217     <strong class='reserved'>switch</strong> (<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>.<a href='../Y/ss_family.html' title='Multiple used in 5 places.'>ss_family</a>)
<a id='L1218' name='L1218'></a>1218     <em class='brace'>{</em>
<a id='L1219' name='L1219'></a>1219     <strong class='reserved'>case</strong> <a href='../Y/AF_INET.html' title='Multiple used in 11 places.'>AF_INET</a>:
<a id='L1220' name='L1220'></a>1220         <a href='../Y/af.html' title='Multiple used in 5 places.'>af</a> = <a href='../S/src--vfs--ftpfs--ftpfs.h.html#L11' title='Defined at 11 in src/vfs/ftpfs/ftpfs.h.'>FTP_INET</a>;
<a id='L1221' name='L1221'></a>1221         <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> = ((<strong class='reserved'>struct</strong> <a href='../Y/sockaddr_in.html' title='Multiple used in 22 places.'>sockaddr_in</a> *) &amp;<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>)-&gt;<a href='../Y/sin_port.html' title='Multiple used in 9 places.'>sin_port</a>;
<a id='L1222' name='L1222'></a>1222         <strong class='reserved'>break</strong>;
<a id='L1223' name='L1223'></a>1223     <strong class='reserved'>case</strong> <a href='../Y/AF_INET6.html' title='Multiple used in 3 places.'>AF_INET6</a>:
<a id='L1224' name='L1224'></a>1224         <a href='../Y/af.html' title='Multiple used in 5 places.'>af</a> = <a href='../S/src--vfs--ftpfs--ftpfs.h.html#L12' title='Defined at 12 in src/vfs/ftpfs/ftpfs.h.'>FTP_INET6</a>;
<a id='L1225' name='L1225'></a>1225         <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> = ((<strong class='reserved'>struct</strong> <a href='../Y/sockaddr_in6.html' title='Multiple used in 3 places.'>sockaddr_in6</a> *) &amp;<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>)-&gt;<a href='../Y/sin6_port.html' title='Multiple used in 3 places.'>sin6_port</a>;
<a id='L1226' name='L1226'></a>1226         <strong class='reserved'>break</strong>;
<a id='L1227' name='L1227'></a>1227     <strong class='reserved'>default</strong>:
<a id='L1228' name='L1228'></a>1228         <em class='comment'>/* Not implemented */</em>
<a id='L1229' name='L1229'></a>1229         <strong class='reserved'>return</strong> 0;
<a id='L1230' name='L1230'></a>1230     <em class='brace'>}</em>
<a id='L1231' name='L1231'></a>1231 
<a id='L1232' name='L1232'></a>1232     <a href='../Y/addr.html' title='Multiple used in 39 places.'>addr</a> = <a href='../Y/g_try_malloc.html' title='Multiple used in 10 places.'>g_try_malloc</a> (<a href='../Y/NI_MAXHOST.html' title='Multiple used in 2 places.'>NI_MAXHOST</a>);
<a id='L1233' name='L1233'></a>1233     <strong class='reserved'>if</strong> (<a href='../Y/addr.html' title='Multiple used in 39 places.'>addr</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1234' name='L1234'></a>1234         <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/ENOMEM.html' title='Multiple used in 5 places.'>ENOMEM</a>, -1);
<a id='L1235' name='L1235'></a>1235 
<a id='L1236' name='L1236'></a>1236     <strong class='reserved'>if</strong> (getnameinfo
<a id='L1237' name='L1237'></a>1237         ((<strong class='reserved'>struct</strong> <a href='../Y/sockaddr.html' title='Multiple used in 15 places.'>sockaddr</a> *) &amp;<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, <a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>, <a href='../Y/addr.html' title='Multiple used in 39 places.'>addr</a>, <a href='../Y/NI_MAXHOST.html' title='Multiple used in 2 places.'>NI_MAXHOST</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, 0,
<a id='L1238' name='L1238'></a>1238          NI_NUMERICHOST) != 0)
<a id='L1239' name='L1239'></a>1239     <em class='brace'>{</em>
<a id='L1240' name='L1240'></a>1240         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/addr.html' title='Multiple used in 39 places.'>addr</a>);
<a id='L1241' name='L1241'></a>1241         <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EIO.html' title='Multiple used in 28 places.'>EIO</a>, -1);
<a id='L1242' name='L1242'></a>1242     <em class='brace'>}</em>
<a id='L1243' name='L1243'></a>1243 
<a id='L1244' name='L1244'></a>1244     <em class='comment'>/* If we are talking to an IPV4 server, try PORT, and, only if it fails, go for EPRT */</em>
<a id='L1245' name='L1245'></a>1245     <strong class='reserved'>if</strong> (<a href='../Y/af.html' title='Multiple used in 5 places.'>af</a> == <a href='../S/src--vfs--ftpfs--ftpfs.h.html#L11' title='Defined at 11 in src/vfs/ftpfs/ftpfs.h.'>FTP_INET</a>)
<a id='L1246' name='L1246'></a>1246     <em class='brace'>{</em>
<a id='L1247' name='L1247'></a>1247         <strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong> *<a href='../Y/a.html' title='Multiple used in 340 places.'>a</a> = (<strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong> *) &amp;((<strong class='reserved'>struct</strong> <a href='../Y/sockaddr_in.html' title='Multiple used in 22 places.'>sockaddr_in</a> *) &amp;<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>)-&gt;<a href='../Y/sin_addr.html' title='Multiple used in 21 places.'>sin_addr</a>;
<a id='L1248' name='L1248'></a>1248         <strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong> *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = (<strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong> *) &amp;<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>;
<a id='L1249' name='L1249'></a>1249 
<a id='L1250' name='L1250'></a>1250         <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>,
<a id='L1251' name='L1251'></a>1251                            "PORT %u,%u,%u,%u,%u,%u", <a href='../Y/a.html' title='Multiple used in 340 places.'>a</a>[0], <a href='../Y/a.html' title='Multiple used in 340 places.'>a</a>[1], <a href='../Y/a.html' title='Multiple used in 340 places.'>a</a>[2], <a href='../Y/a.html' title='Multiple used in 340 places.'>a</a>[3],
<a id='L1252' name='L1252'></a>1252                            <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>[0], <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>[1]) == <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L1253' name='L1253'></a>1253         <em class='brace'>{</em>
<a id='L1254' name='L1254'></a>1254             <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/addr.html' title='Multiple used in 39 places.'>addr</a>);
<a id='L1255' name='L1255'></a>1255             <strong class='reserved'>return</strong> 1;
<a id='L1256' name='L1256'></a>1256         <em class='brace'>}</em>
<a id='L1257' name='L1257'></a>1257     <em class='brace'>}</em>
<a id='L1258' name='L1258'></a>1258 
<a id='L1259' name='L1259'></a>1259     <em class='comment'>/*</em>
<a id='L1260' name='L1260'></a>1260 <em class='comment'>     * Converts network MSB first order to host byte order (LSB</em>
<a id='L1261' name='L1261'></a>1261 <em class='comment'>     * first on i386). If we do it earlier, we will run into an</em>
<a id='L1262' name='L1262'></a>1262 <em class='comment'>     * endianness issue, because the server actually expects to see</em>
<a id='L1263' name='L1263'></a>1263 <em class='comment'>     * "PORT A,D,D,R,MSB,LSB" in the PORT command.</em>
<a id='L1264' name='L1264'></a>1264 <em class='comment'>     */</em>
<a id='L1265' name='L1265'></a>1265     <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a> = <a href='../Y/ntohs.html' title='Multiple used in 2 places.'>ntohs</a> (<a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>);
<a id='L1266' name='L1266'></a>1266 
<a id='L1267' name='L1267'></a>1267     <em class='comment'>/* We are talking to an IPV6 server or PORT failed, so we can try EPRT anyway */</em>
<a id='L1268' name='L1268'></a>1268     <a href='../Y/res.html' title='Multiple used in 390 places.'>res</a> =
<a id='L1269' name='L1269'></a>1269         (<a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>, "EPRT |%u|%s|%hu|", <a href='../Y/af.html' title='Multiple used in 5 places.'>af</a>, <a href='../Y/addr.html' title='Multiple used in 39 places.'>addr</a>, <a href='../Y/port.html' title='Multiple used in 111 places.'>port</a>) ==
<a id='L1270' name='L1270'></a>1270          <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>) ? 1 : 0;
<a id='L1271' name='L1271'></a>1271     <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/addr.html' title='Multiple used in 39 places.'>addr</a>);
<a id='L1272' name='L1272'></a>1272     <strong class='reserved'>return</strong> <a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>;
<a id='L1273' name='L1273'></a>1273 <em class='brace'>}</em>
<a id='L1274' name='L1274'></a>1274 
<a id='L1275' name='L1275'></a>1275 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1276' name='L1276'></a>1276 <em class='comment'>/* Initialize a socket for FTP DATA connection */</em>
<a id='L1277' name='L1277'></a>1277 
<a id='L1278' name='L1278'></a>1278 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L1279' name='L1279'></a>1279 <a href='../R/ftpfs_init_data_socket.html' title='Multiple referred from 2 places.'>ftpfs_init_data_socket</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
     <em class='comment'>/* <a href='#L1209'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1324'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1279 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1280' name='L1280'></a>1280                         <strong class='reserved'>struct</strong> <a href='../Y/sockaddr_storage.html' title='Multiple used in 7 places.'>sockaddr_storage</a> *<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L188' title='Defined at 188 in src/vfs/ftpfs/ftpfs.c.'>socklen_t</a> * <a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>)
<a id='L1281' name='L1281'></a>1281 <em class='brace'>{</em>
<a id='L1282' name='L1282'></a>1282     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L1283' name='L1283'></a>1283     <strong class='reserved'>int</strong> <a href='../Y/result.html' title='Multiple used in 790 places.'>result</a>;
<a id='L1284' name='L1284'></a>1284 
<a id='L1285' name='L1285'></a>1285     <a href='../Y/memset.html' title='Multiple used in 162 places.'>memset</a> (<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, 0, <strong class='reserved'>sizeof</strong> (*<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>));
<a id='L1286' name='L1286'></a>1286     *<a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a> = <strong class='reserved'>sizeof</strong> (*<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>);
<a id='L1287' name='L1287'></a>1287 
<a id='L1288' name='L1288'></a>1288     <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/use_passive_connection.html' title='Multiple used in 9 places.'>use_passive_connection</a>)
<a id='L1289' name='L1289'></a>1289         <a href='../Y/result.html' title='Multiple used in 790 places.'>result</a> = <a href='../Y/getpeername.html' title='Multiple used in 3 places.'>getpeername</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, (<strong class='reserved'>struct</strong> <a href='../Y/sockaddr.html' title='Multiple used in 15 places.'>sockaddr</a> *) <a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, <a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>);
<a id='L1290' name='L1290'></a>1290     <strong class='reserved'>else</strong>
<a id='L1291' name='L1291'></a>1291         <a href='../Y/result.html' title='Multiple used in 790 places.'>result</a> = <a href='../Y/getsockname.html' title='Multiple used in 2 places.'>getsockname</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, (<strong class='reserved'>struct</strong> <a href='../Y/sockaddr.html' title='Multiple used in 15 places.'>sockaddr</a> *) <a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, <a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>);
<a id='L1292' name='L1292'></a>1292 
<a id='L1293' name='L1293'></a>1293     <strong class='reserved'>if</strong> (<a href='../Y/result.html' title='Multiple used in 790 places.'>result</a> == -1)
<a id='L1294' name='L1294'></a>1294         <strong class='reserved'>return</strong> (-1);
<a id='L1295' name='L1295'></a>1295 
<a id='L1296' name='L1296'></a>1296     <strong class='reserved'>switch</strong> (<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>-&gt;<a href='../Y/ss_family.html' title='Multiple used in 5 places.'>ss_family</a>)
<a id='L1297' name='L1297'></a>1297     <em class='brace'>{</em>
<a id='L1298' name='L1298'></a>1298     <strong class='reserved'>case</strong> <a href='../Y/AF_INET.html' title='Multiple used in 11 places.'>AF_INET</a>:
<a id='L1299' name='L1299'></a>1299         ((<strong class='reserved'>struct</strong> <a href='../Y/sockaddr_in.html' title='Multiple used in 22 places.'>sockaddr_in</a> *) <a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>)-&gt;<a href='../Y/sin_port.html' title='Multiple used in 9 places.'>sin_port</a> = 0;
<a id='L1300' name='L1300'></a>1300         <strong class='reserved'>break</strong>;
<a id='L1301' name='L1301'></a>1301     <strong class='reserved'>case</strong> <a href='../Y/AF_INET6.html' title='Multiple used in 3 places.'>AF_INET6</a>:
<a id='L1302' name='L1302'></a>1302         ((<strong class='reserved'>struct</strong> <a href='../Y/sockaddr_in6.html' title='Multiple used in 3 places.'>sockaddr_in6</a> *) <a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>)-&gt;<a href='../Y/sin6_port.html' title='Multiple used in 3 places.'>sin6_port</a> = 0;
<a id='L1303' name='L1303'></a>1303         <strong class='reserved'>break</strong>;
<a id='L1304' name='L1304'></a>1304     <strong class='reserved'>default</strong>:
<a id='L1305' name='L1305'></a>1305         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: invalid address family"));
<a id='L1306' name='L1306'></a>1306         <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EINVAL.html' title='Multiple used in 13 places.'>EINVAL</a>, -1);
<a id='L1307' name='L1307'></a>1307     <em class='brace'>}</em>
<a id='L1308' name='L1308'></a>1308 
<a id='L1309' name='L1309'></a>1309     <a href='../Y/result.html' title='Multiple used in 790 places.'>result</a> = <a href='../Y/socket.html' title='Multiple used in 9 places.'>socket</a> (<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>-&gt;<a href='../Y/ss_family.html' title='Multiple used in 5 places.'>ss_family</a>, <a href='../Y/SOCK_STREAM.html' title='Multiple used in 6 places.'>SOCK_STREAM</a>, <a href='../Y/IPPROTO_TCP.html' title='Multiple used in 2 places.'>IPPROTO_TCP</a>);
<a id='L1310' name='L1310'></a>1310 
<a id='L1311' name='L1311'></a>1311     <strong class='reserved'>if</strong> (<a href='../Y/result.html' title='Multiple used in 790 places.'>result</a> &lt; 0)
<a id='L1312' name='L1312'></a>1312     <em class='brace'>{</em>
<a id='L1313' name='L1313'></a>1313         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: could not create socket: %s"), <a href='../S/lib--util.c.html#L684' title='Defined at 684 in lib/util.c.'>unix_error_string</a> (<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a>));
<a id='L1314' name='L1314'></a>1314         <strong class='reserved'>return</strong> (-1);
<a id='L1315' name='L1315'></a>1315     <em class='brace'>}</em>
<a id='L1316' name='L1316'></a>1316 
<a id='L1317' name='L1317'></a>1317     <strong class='reserved'>return</strong> <a href='../Y/result.html' title='Multiple used in 790 places.'>result</a>;
<a id='L1318' name='L1318'></a>1318 <em class='brace'>}</em>
<a id='L1319' name='L1319'></a>1319 
<a id='L1320' name='L1320'></a>1320 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1321' name='L1321'></a>1321 <em class='comment'>/* Initialize FTP DATA connection */</em>
<a id='L1322' name='L1322'></a>1322 
<a id='L1323' name='L1323'></a>1323 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L1324' name='L1324'></a>1324 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1394' title='Referred from 1394 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_initconn</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)
     <em class='comment'>/* <a href='#L1279'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1384'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1324 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1325' name='L1325'></a>1325 <em class='brace'>{</em>
<a id='L1326' name='L1326'></a>1326     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L1327' name='L1327'></a>1327     <strong class='reserved'>struct</strong> <a href='../Y/sockaddr_storage.html' title='Multiple used in 7 places.'>sockaddr_storage</a> <a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>;
<a id='L1328' name='L1328'></a>1328     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L188' title='Defined at 188 in src/vfs/ftpfs/ftpfs.c.'>socklen_t</a> <a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>;
<a id='L1329' name='L1329'></a>1329 
<a id='L1330' name='L1330'></a>1330     <em class='comment'>/*</em>
<a id='L1331' name='L1331'></a>1331 <em class='comment'>     * Don't factor socket initialization out of these conditionals,</em>
<a id='L1332' name='L1332'></a>1332 <em class='comment'>     * because ftpfs_init_data_socket initializes it in different way</em>
<a id='L1333' name='L1333'></a>1333 <em class='comment'>     * depending on use_passive_connection flag.</em>
<a id='L1334' name='L1334'></a>1334 <em class='comment'>     */</em>
<a id='L1335' name='L1335'></a>1335 
<a id='L1336' name='L1336'></a>1336     <em class='comment'>/* Try to establish a passive connection first (if requested) */</em>
<a id='L1337' name='L1337'></a>1337     <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/use_passive_connection.html' title='Multiple used in 9 places.'>use_passive_connection</a>)
<a id='L1338' name='L1338'></a>1338     <em class='brace'>{</em>
<a id='L1339' name='L1339'></a>1339         <strong class='reserved'>int</strong> <a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a>;
<a id='L1340' name='L1340'></a>1340 
<a id='L1341' name='L1341'></a>1341         <a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1279' title='Defined at 1279 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_init_data_socket</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, &amp;<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, &amp;<a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>);
<a id='L1342' name='L1342'></a>1342         <strong class='reserved'>if</strong> (<a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a> &lt; 0)
<a id='L1343' name='L1343'></a>1343             <strong class='reserved'>return</strong> (-1);
<a id='L1344' name='L1344'></a>1344 
<a id='L1345' name='L1345'></a>1345         <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1187' title='Defined at 1187 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_setup_passive</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a>, &amp;<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, &amp;<a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>))
<a id='L1346' name='L1346'></a>1346             <strong class='reserved'>return</strong> <a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a>;
<a id='L1347' name='L1347'></a>1347 
<a id='L1348' name='L1348'></a>1348         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: could not setup passive mode"));
<a id='L1349' name='L1349'></a>1349         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/use_passive_connection.html' title='Multiple used in 9 places.'>use_passive_connection</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1350' name='L1350'></a>1350 
<a id='L1351' name='L1351'></a>1351         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a>);
<a id='L1352' name='L1352'></a>1352     <em class='brace'>}</em>
<a id='L1353' name='L1353'></a>1353 
<a id='L1354' name='L1354'></a>1354     <em class='comment'>/* If passive setup is diabled or failed, fallback to active connections */</em>
<a id='L1355' name='L1355'></a>1355     <strong class='reserved'>if</strong> (!<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/use_passive_connection.html' title='Multiple used in 9 places.'>use_passive_connection</a>)
<a id='L1356' name='L1356'></a>1356     <em class='brace'>{</em>
<a id='L1357' name='L1357'></a>1357         <strong class='reserved'>int</strong> <a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a>;
<a id='L1358' name='L1358'></a>1358 
<a id='L1359' name='L1359'></a>1359         <a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1279' title='Defined at 1279 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_init_data_socket</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, &amp;<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, &amp;<a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>);
<a id='L1360' name='L1360'></a>1360         <strong class='reserved'>if</strong> (<a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a> &lt; 0)
<a id='L1361' name='L1361'></a>1361             <strong class='reserved'>return</strong> (-1);
<a id='L1362' name='L1362'></a>1362 
<a id='L1363' name='L1363'></a>1363         <strong class='reserved'>if</strong> ((<a href='../Y/bind.html' title='Multiple used in 5 places.'>bind</a> (<a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a>, (<strong class='reserved'>struct</strong> <a href='../Y/sockaddr.html' title='Multiple used in 15 places.'>sockaddr</a> *) &amp;<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, <a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>) == 0) &amp;&amp;
<a id='L1364' name='L1364'></a>1364             (<a href='../Y/getsockname.html' title='Multiple used in 2 places.'>getsockname</a> (<a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a>, (<strong class='reserved'>struct</strong> <a href='../Y/sockaddr.html' title='Multiple used in 15 places.'>sockaddr</a> *) &amp;<a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, &amp;<a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>) == 0) &amp;&amp;
<a id='L1365' name='L1365'></a>1365             (listen (<a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a>, 1) == 0) &amp;&amp;
<a id='L1366' name='L1366'></a>1366             (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1209' title='Defined at 1209 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_setup_active</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/data_addr.html' title='Multiple used in 22 places.'>data_addr</a>, <a href='../Y/data_addrlen.html' title='Multiple used in 13 places.'>data_addrlen</a>) != 0))
<a id='L1367' name='L1367'></a>1367             <strong class='reserved'>return</strong> <a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a>;
<a id='L1368' name='L1368'></a>1368 
<a id='L1369' name='L1369'></a>1369         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/data_sock.html' title='Multiple used in 14 places.'>data_sock</a>);
<a id='L1370' name='L1370'></a>1370     <em class='brace'>}</em>
<a id='L1371' name='L1371'></a>1371 
<a id='L1372' name='L1372'></a>1372     <em class='comment'>/* Restore the initial value of use_passive_connection (for subsequent retries) */</em>
<a id='L1373' name='L1373'></a>1373     <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/use_passive_connection.html' title='Multiple used in 9 places.'>use_passive_connection</a> =
<a id='L1374' name='L1374'></a>1374         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/proxy.html' title='Multiple used in 8 places.'>proxy</a> !=
<a id='L1375' name='L1375'></a>1375         <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a> ? <a href='../Y/ftpfs_use_passive_connections_over_proxy.html' title='Multiple used in 6 places.'>ftpfs_use_passive_connections_over_proxy</a> : <a href='../Y/ftpfs_use_passive_connections.html' title='Multiple used in 6 places.'>ftpfs_use_passive_connections</a>;
<a id='L1376' name='L1376'></a>1376 
<a id='L1377' name='L1377'></a>1377     <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/EIO.html' title='Multiple used in 28 places.'>EIO</a>;
<a id='L1378' name='L1378'></a>1378     <strong class='reserved'>return</strong> (-1);
<a id='L1379' name='L1379'></a>1379 <em class='brace'>}</em>
<a id='L1380' name='L1380'></a>1380 
<a id='L1381' name='L1381'></a>1381 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1382' name='L1382'></a>1382 
<a id='L1383' name='L1383'></a>1383 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L1384' name='L1384'></a>1384 <a href='../R/ftpfs_open_data_connection.html' title='Multiple referred from 8 places.'>ftpfs_open_data_connection</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/cmd.html' title='Multiple used in 101 places.'>cmd</a>,
     <em class='comment'>/* <a href='#L1324'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1457'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1384 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1385' name='L1385'></a>1385                             <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/remote.html' title='Multiple used in 3 places.'>remote</a>, <strong class='reserved'>int</strong> <a href='../Y/isbinary.html' title='Multiple used in 7 places.'>isbinary</a>, <strong class='reserved'>int</strong> <a href='../Y/reget.html' title='Multiple used in 3 places.'>reget</a>)
<a id='L1386' name='L1386'></a>1386 <em class='brace'>{</em>
<a id='L1387' name='L1387'></a>1387     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L1388' name='L1388'></a>1388     <strong class='reserved'>int</strong> <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>, <a href='../Y/j.html' title='Multiple used in 214 places.'>j</a>, <a href='../Y/data.html' title='Multiple used in 912 places.'>data</a>;
<a id='L1389' name='L1389'></a>1389 
<a id='L1390' name='L1390'></a>1390     <em class='comment'>/* FTP doesn't allow to open more than one file at a time */</em>
<a id='L1391' name='L1391'></a>1391     <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a>)
<a id='L1392' name='L1392'></a>1392         <strong class='reserved'>return</strong> (-1);
<a id='L1393' name='L1393'></a>1393 
<a id='L1394' name='L1394'></a>1394     <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1324' title='Defined at 1324 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_initconn</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L1395' name='L1395'></a>1395     <strong class='reserved'>if</strong> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a> == -1)
<a id='L1396' name='L1396'></a>1396         <strong class='reserved'>return</strong> (-1);
<a id='L1397' name='L1397'></a>1397 
<a id='L1398' name='L1398'></a>1398     <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L600' title='Defined at 600 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_changetype</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/isbinary.html' title='Multiple used in 7 places.'>isbinary</a>) == -1)
<a id='L1399' name='L1399'></a>1399     <em class='brace'>{</em>
<a id='L1400' name='L1400'></a>1400         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>);
<a id='L1401' name='L1401'></a>1401         <strong class='reserved'>return</strong> (-1);
<a id='L1402' name='L1402'></a>1402     <em class='brace'>}</em>
<a id='L1403' name='L1403'></a>1403 
<a id='L1404' name='L1404'></a>1404     <strong class='reserved'>if</strong> (<a href='../Y/reget.html' title='Multiple used in 3 places.'>reget</a> &gt; 0)
<a id='L1405' name='L1405'></a>1405     <em class='brace'>{</em>
<a id='L1406' name='L1406'></a>1406         <a href='../Y/j.html' title='Multiple used in 214 places.'>j</a> = <a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>, "REST %d", <a href='../Y/reget.html' title='Multiple used in 3 places.'>reget</a>);
<a id='L1407' name='L1407'></a>1407         <strong class='reserved'>if</strong> (<a href='../Y/j.html' title='Multiple used in 214 places.'>j</a> != <a href='../S/src--vfs--fish--fish.c.html#L101' title='Defined at 101 in src/vfs/fish/fish.c.'>CONTINUE</a>)
<a id='L1408' name='L1408'></a>1408         <em class='brace'>{</em>
<a id='L1409' name='L1409'></a>1409             <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>);
<a id='L1410' name='L1410'></a>1410             <strong class='reserved'>return</strong> (-1);
<a id='L1411' name='L1411'></a>1411         <em class='brace'>}</em>
<a id='L1412' name='L1412'></a>1412     <em class='brace'>}</em>
<a id='L1413' name='L1413'></a>1413 
<a id='L1414' name='L1414'></a>1414     <strong class='reserved'>if</strong> (<a href='../Y/remote.html' title='Multiple used in 3 places.'>remote</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1415' name='L1415'></a>1415         <a href='../Y/j.html' title='Multiple used in 214 places.'>j</a> = <a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>, "%s", <a href='../Y/cmd.html' title='Multiple used in 101 places.'>cmd</a>);
<a id='L1416' name='L1416'></a>1416     <strong class='reserved'>else</strong>
<a id='L1417' name='L1417'></a>1417     <em class='brace'>{</em>
<a id='L1418' name='L1418'></a>1418         <strong class='reserved'>char</strong> *<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>;
<a id='L1419' name='L1419'></a>1419 
<a id='L1420' name='L1420'></a>1420         <a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L303' title='Defined at 303 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_translate_path</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/remote.html' title='Multiple used in 3 places.'>remote</a>);
<a id='L1421' name='L1421'></a>1421         <a href='../Y/j.html' title='Multiple used in 214 places.'>j</a> = <a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>, "%s /%s", <a href='../Y/cmd.html' title='Multiple used in 101 places.'>cmd</a>,
<a id='L1422' name='L1422'></a>1422                            <em class='comment'>/* WarFtpD can't STORE //filename */</em>
<a id='L1423' name='L1423'></a>1423                            <a href='../S/lib--global.h.html#L128' title='Defined at 128 in lib/global.h.'>IS_PATH_SEP</a> (*<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>) ? <a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a> + 1 : <a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>);
<a id='L1424' name='L1424'></a>1424         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>);
<a id='L1425' name='L1425'></a>1425     <em class='brace'>}</em>
<a id='L1426' name='L1426'></a>1426 
<a id='L1427' name='L1427'></a>1427     <strong class='reserved'>if</strong> (<a href='../Y/j.html' title='Multiple used in 214 places.'>j</a> != <a href='../S/src--vfs--fish--fish.c.html#L99' title='Defined at 99 in src/vfs/fish/fish.c.'>PRELIM</a>)
<a id='L1428' name='L1428'></a>1428     <em class='brace'>{</em>
<a id='L1429' name='L1429'></a>1429         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>);
<a id='L1430' name='L1430'></a>1430         <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EPERM.html' title='Multiple used in 10 places.'>EPERM</a>, -1);
<a id='L1431' name='L1431'></a>1431     <em class='brace'>}</em>
<a id='L1432' name='L1432'></a>1432 
<a id='L1433' name='L1433'></a>1433     <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/use_passive_connection.html' title='Multiple used in 9 places.'>use_passive_connection</a>)
<a id='L1434' name='L1434'></a>1434         <a href='../Y/data.html' title='Multiple used in 912 places.'>data</a> = <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>;
<a id='L1435' name='L1435'></a>1435     <strong class='reserved'>else</strong>
<a id='L1436' name='L1436'></a>1436     <em class='brace'>{</em>
<a id='L1437' name='L1437'></a>1437         <strong class='reserved'>struct</strong> <a href='../Y/sockaddr_storage.html' title='Multiple used in 7 places.'>sockaddr_storage</a> <a href='../Y/from.html' title='Multiple used in 162 places.'>from</a>;
<a id='L1438' name='L1438'></a>1438         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L188' title='Defined at 188 in src/vfs/ftpfs/ftpfs.c.'>socklen_t</a> <a href='../Y/fromlen.html' title='Multiple used in 2 places.'>fromlen</a> = <strong class='reserved'>sizeof</strong> (<a href='../Y/from.html' title='Multiple used in 162 places.'>from</a>);
<a id='L1439' name='L1439'></a>1439 
<a id='L1440' name='L1440'></a>1440         <a href='../S/lib--tty--tty.c.html#L141' title='Defined at 141 in lib/tty/tty.c.'>tty_enable_interrupt_key</a> ();
<a id='L1441' name='L1441'></a>1441         <a href='../Y/data.html' title='Multiple used in 912 places.'>data</a> = accept (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>, (<strong class='reserved'>struct</strong> <a href='../Y/sockaddr.html' title='Multiple used in 15 places.'>sockaddr</a> *) &amp;<a href='../Y/from.html' title='Multiple used in 162 places.'>from</a>, &amp;<a href='../Y/fromlen.html' title='Multiple used in 2 places.'>fromlen</a>);
<a id='L1442' name='L1442'></a>1442         <strong class='reserved'>if</strong> (<a href='../Y/data.html' title='Multiple used in 912 places.'>data</a> &lt; 0)
<a id='L1443' name='L1443'></a>1443             <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a>;
<a id='L1444' name='L1444'></a>1444         <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L1445' name='L1445'></a>1445         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>);
<a id='L1446' name='L1446'></a>1446         <strong class='reserved'>if</strong> (<a href='../Y/data.html' title='Multiple used in 912 places.'>data</a> &lt; 0)
<a id='L1447' name='L1447'></a>1447             <strong class='reserved'>return</strong> (-1);
<a id='L1448' name='L1448'></a>1448     <em class='brace'>}</em>
<a id='L1449' name='L1449'></a>1449 
<a id='L1450' name='L1450'></a>1450     <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L1451' name='L1451'></a>1451     <strong class='reserved'>return</strong> <a href='../Y/data.html' title='Multiple used in 912 places.'>data</a>;
<a id='L1452' name='L1452'></a>1452 <em class='brace'>}</em>
<a id='L1453' name='L1453'></a>1453 
<a id='L1454' name='L1454'></a>1454 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1455' name='L1455'></a>1455 
<a id='L1456' name='L1456'></a>1456 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L1457' name='L1457'></a>1457 <a href='../R/ftpfs_linear_abort.html' title='Multiple referred from 2 places.'>ftpfs_linear_abort</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/lib--vfs--xdirentry.h.html#L106' title='Defined at 106 in lib/vfs/xdirentry.h.'>vfs_file_handler_t</a> * <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>)
     <em class='comment'>/* <a href='#L1384'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1525'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1457 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1458' name='L1458'></a>1458 <em class='brace'>{</em>
<a id='L1459' name='L1459'></a>1459     <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a> = <a href='../S/lib--vfs--xdirentry.h.html#L44' title='Defined at 44 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER_SUPER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>);
<a id='L1460' name='L1460'></a>1460     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L1461' name='L1461'></a>1461     <strong class='reserved'>static</strong> <strong class='reserved'>unsigned</strong> <strong class='reserved'>char</strong> <strong class='reserved'>const</strong> <a href='../Y/ipbuf.html' title='Multiple used in 2 places.'>ipbuf</a>[3] = <em class='brace'>{</em> IAC, IP, IAC <em class='brace'>}</em>;
<a id='L1462' name='L1462'></a>1462     <a href='../Y/fd_set.html' title='Multiple used in 28 places.'>fd_set</a> <a href='../Y/mask.html' title='Multiple used in 27 places.'>mask</a>;
<a id='L1463' name='L1463'></a>1463     <strong class='reserved'>int</strong> <a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L158' title='Defined at 158 in src/vfs/ftpfs/ftpfs.c.'>FH_SOCK</a>;
<a id='L1464' name='L1464'></a>1464 
<a id='L1465' name='L1465'></a>1465     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L158' title='Defined at 158 in src/vfs/ftpfs/ftpfs.c.'>FH_SOCK</a> = -1;
<a id='L1466' name='L1466'></a>1466     <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1467' name='L1467'></a>1467 
<a id='L1468' name='L1468'></a>1468     <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: aborting transfer."));
<a id='L1469' name='L1469'></a>1469 
<a id='L1470' name='L1470'></a>1470     <strong class='reserved'>if</strong> (<a href='../Y/send.html' title='Multiple used in 5 places.'>send</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/ipbuf.html' title='Multiple used in 2 places.'>ipbuf</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/ipbuf.html' title='Multiple used in 2 places.'>ipbuf</a>), MSG_OOB) != <strong class='reserved'>sizeof</strong> (<a href='../Y/ipbuf.html' title='Multiple used in 2 places.'>ipbuf</a>))
<a id='L1471' name='L1471'></a>1471     <em class='brace'>{</em>
<a id='L1472' name='L1472'></a>1472         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: abort error: %s"), <a href='../S/lib--util.c.html#L684' title='Defined at 684 in lib/util.c.'>unix_error_string</a> (<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a>));
<a id='L1473' name='L1473'></a>1473         <strong class='reserved'>if</strong> (<a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a> != -1)
<a id='L1474' name='L1474'></a>1474             <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a>);
<a id='L1475' name='L1475'></a>1475         <strong class='reserved'>return</strong>;
<a id='L1476' name='L1476'></a>1476     <em class='brace'>}</em>
<a id='L1477' name='L1477'></a>1477 
<a id='L1478' name='L1478'></a>1478     <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/NONE.html' title='Multiple defined in 3 places.'>NONE</a>, "%cABOR", DM) != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L1479' name='L1479'></a>1479     <em class='brace'>{</em>
<a id='L1480' name='L1480'></a>1480         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: abort failed"));
<a id='L1481' name='L1481'></a>1481         <strong class='reserved'>if</strong> (<a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a> != -1)
<a id='L1482' name='L1482'></a>1482             <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a>);
<a id='L1483' name='L1483'></a>1483         <strong class='reserved'>return</strong>;
<a id='L1484' name='L1484'></a>1484     <em class='brace'>}</em>
<a id='L1485' name='L1485'></a>1485 
<a id='L1486' name='L1486'></a>1486     <strong class='reserved'>if</strong> (<a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a> != -1)
<a id='L1487' name='L1487'></a>1487     <em class='brace'>{</em>
<a id='L1488' name='L1488'></a>1488         <a href='../Y/FD_ZERO.html' title='Multiple used in 22 places.'>FD_ZERO</a> (&amp;<a href='../Y/mask.html' title='Multiple used in 27 places.'>mask</a>);
<a id='L1489' name='L1489'></a>1489         <a href='../Y/FD_SET.html' title='Multiple used in 28 places.'>FD_SET</a> (<a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a>, &amp;<a href='../Y/mask.html' title='Multiple used in 27 places.'>mask</a>);
<a id='L1490' name='L1490'></a>1490 
<a id='L1491' name='L1491'></a>1491         <strong class='reserved'>if</strong> (<a href='../Y/select.html' title='Multiple used in 22 places.'>select</a> (<a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a> + 1, &amp;<a href='../Y/mask.html' title='Multiple used in 27 places.'>mask</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>) &gt; 0)
<a id='L1492' name='L1492'></a>1492         <em class='brace'>{</em>
<a id='L1493' name='L1493'></a>1493             <a href='../Y/gint64.html' title='Multiple used in 24 places.'>gint64</a> <a href='../Y/start_tim.html' title='Multiple used in 3 places.'>start_tim</a>;
<a id='L1494' name='L1494'></a>1494             <strong class='reserved'>char</strong> <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>[<a href='../S/lib--global.h.html#L108' title='Defined at 108 in lib/global.h.'>BUF_8K</a>];
<a id='L1495' name='L1495'></a>1495 
<a id='L1496' name='L1496'></a>1496             <a href='../Y/start_tim.html' title='Multiple used in 3 places.'>start_tim</a> = <a href='../Y/g_get_real_time.html' title='Multiple used in 11 places.'>g_get_real_time</a> ();
<a id='L1497' name='L1497'></a>1497 
<a id='L1498' name='L1498'></a>1498             <em class='comment'>/* flush the remaining data */</em>
<a id='L1499' name='L1499'></a>1499             <strong class='reserved'>while</strong> (<a href='../Y/read.html' title='Multiple used in 82 places.'>read</a> (<a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a>, <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>)) &gt; 0)
<a id='L1500' name='L1500'></a>1500             <em class='brace'>{</em>
<a id='L1501' name='L1501'></a>1501                 <a href='../Y/gint64.html' title='Multiple used in 24 places.'>gint64</a> <a href='../Y/tim.html' title='Multiple used in 41 places.'>tim</a>;
<a id='L1502' name='L1502'></a>1502 
<a id='L1503' name='L1503'></a>1503                 <a href='../Y/tim.html' title='Multiple used in 41 places.'>tim</a> = <a href='../Y/g_get_real_time.html' title='Multiple used in 11 places.'>g_get_real_time</a> ();
<a id='L1504' name='L1504'></a>1504 
<a id='L1505' name='L1505'></a>1505                 <strong class='reserved'>if</strong> (<a href='../Y/tim.html' title='Multiple used in 41 places.'>tim</a> &gt; <a href='../Y/start_tim.html' title='Multiple used in 3 places.'>start_tim</a> + <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L184' title='Defined at 184 in src/vfs/ftpfs/ftpfs.c.'>ABORT_TIMEOUT</a>)
<a id='L1506' name='L1506'></a>1506                 <em class='brace'>{</em>
<a id='L1507' name='L1507'></a>1507                     <em class='comment'>/* server keeps sending, drop the connection and ftpfs_reconnect */</em>
<a id='L1508' name='L1508'></a>1508                     <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a>);
<a id='L1509' name='L1509'></a>1509                     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L444' title='Defined at 444 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_reconnect</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L1510' name='L1510'></a>1510                     <strong class='reserved'>return</strong>;
<a id='L1511' name='L1511'></a>1511                 <em class='brace'>}</em>
<a id='L1512' name='L1512'></a>1512             <em class='brace'>}</em>
<a id='L1513' name='L1513'></a>1513         <em class='brace'>}</em>
<a id='L1514' name='L1514'></a>1514         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/dsock.html' title='Multiple used in 11 places.'>dsock</a>);
<a id='L1515' name='L1515'></a>1515     <em class='brace'>}</em>
<a id='L1516' name='L1516'></a>1516 
<a id='L1517' name='L1517'></a>1517     <strong class='reserved'>if</strong> ((<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, 0) == <a href='../S/src--vfs--fish--fish.c.html#L102' title='Defined at 102 in src/vfs/fish/fish.c.'>TRANSIENT</a>) &amp;&amp; (<a href='../Y/code.html' title='Multiple used in 120 places.'>code</a> == 426))
<a id='L1518' name='L1518'></a>1518         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, 0);
<a id='L1519' name='L1519'></a>1519 <em class='brace'>}</em>
<a id='L1520' name='L1520'></a>1520 
<a id='L1521' name='L1521'></a>1521 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1522' name='L1522'></a>1522 
<a id='L1523' name='L1523'></a>1523 <em class='sharp'>#if</em> 0
<a id='L1524' name='L1524'></a>1524 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L1525' name='L1525'></a>1525 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1717' title='Referred from 1717 in src/vfs/ftpfs/ftpfs.c.'>resolve_symlink_without_ls_options</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
     <em class='comment'>/* <a href='#L1457'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1605'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1525 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1526' name='L1526'></a>1526                                     <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L84' title='Defined at 84 in lib/vfs/xdirentry.h.'>vfs_s_inode</a> *<a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>)
<a id='L1527' name='L1527'></a>1527 <em class='brace'>{</em>
<a id='L1528' name='L1528'></a>1528     <strong class='reserved'>struct</strong> <a href='../Y/linklist.html' title='Multiple used in 7 places.'>linklist</a> *<a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a>;
<a id='L1529' name='L1529'></a>1529     <strong class='reserved'>struct</strong> <a href='../Y/direntry.html' title='Multiple used in 2 places.'>direntry</a> *<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>, *<a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>;
<a id='L1530' name='L1530'></a>1530     <strong class='reserved'>char</strong> <a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>[<a href='../D/MC_MAXPATHLEN.html' title='Multiple defined in 2 places.'>MC_MAXPATHLEN</a>];
<a id='L1531' name='L1531'></a>1531 
<a id='L1532' name='L1532'></a>1532     <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/symlink_status.html' title='Multiple used in 3 places.'>symlink_status</a> = FTPFS_RESOLVING_SYMLINKS;
<a id='L1533' name='L1533'></a>1533     <strong class='reserved'>for</strong> (<a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a> = <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/file_list.html' title='Multiple used in 15 places.'>file_list</a>-&gt;<a href='../Y/next.html' title='Multiple used in 271 places.'>next</a>; <a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a> != <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/file_list.html' title='Multiple used in 15 places.'>file_list</a>; <a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a> = <a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a>-&gt;<a href='../Y/next.html' title='Multiple used in 271 places.'>next</a>)
<a id='L1534' name='L1534'></a>1534     <em class='brace'>{</em>
<a id='L1535' name='L1535'></a>1535         <em class='comment'>/* flist-&gt;data-&gt;l_stat is alread initialized with 0 */</em>
<a id='L1536' name='L1536'></a>1536         <a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a> = <a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a>-&gt;<a href='../Y/data.html' title='Multiple used in 912 places.'>data</a>;
<a id='L1537' name='L1537'></a>1537         <strong class='reserved'>if</strong> (<a href='../S/lib--fs.h.html#L36' title='Defined at 36 in lib/fs.h.'>S_ISLNK</a> (<a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>.<a href='../Y/st_mode.html' title='Multiple used in 244 places.'>st_mode</a>) &amp;&amp; <a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1538' name='L1538'></a>1538         <em class='brace'>{</em>
<a id='L1539' name='L1539'></a>1539             <strong class='reserved'>int</strong> <a href='../Y/depth.html' title='Multiple used in 10 places.'>depth</a>;
<a id='L1540' name='L1540'></a>1540 
<a id='L1541' name='L1541'></a>1541             <strong class='reserved'>if</strong> (<a href='../S/lib--global.h.html#L128' title='Defined at 128 in lib/global.h.'>IS_PATH_SEP</a> (<a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>[0]))
<a id='L1542' name='L1542'></a>1542             <em class='brace'>{</em>
<a id='L1543' name='L1543'></a>1543                 <strong class='reserved'>if</strong> (<a href='../Y/strlen.html' title='Multiple used in 281 places.'>strlen</a> (<a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>) &gt;= <a href='../D/MC_MAXPATHLEN.html' title='Multiple defined in 2 places.'>MC_MAXPATHLEN</a>)
<a id='L1544' name='L1544'></a>1544                     <strong class='reserved'>continue</strong>;
<a id='L1545' name='L1545'></a>1545                 <a href='../Y/strcpy.html' title='Multiple used in 28 places.'>strcpy</a> (<a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>, <a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>);
<a id='L1546' name='L1546'></a>1546             <em class='brace'>}</em>
<a id='L1547' name='L1547'></a>1547             <strong class='reserved'>else</strong>
<a id='L1548' name='L1548'></a>1548             <em class='brace'>{</em>
<a id='L1549' name='L1549'></a>1549                 <strong class='reserved'>if</strong> ((<a href='../Y/strlen.html' title='Multiple used in 281 places.'>strlen</a> (<a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>) + <a href='../Y/strlen.html' title='Multiple used in 281 places.'>strlen</a> (<a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>)) &gt;= <a href='../D/MC_MAXPATHLEN.html' title='Multiple defined in 2 places.'>MC_MAXPATHLEN</a>)
<a id='L1550' name='L1550'></a>1550                     <strong class='reserved'>continue</strong>;
<a id='L1551' name='L1551'></a>1551                 <a href='../Y/strcpy.html' title='Multiple used in 28 places.'>strcpy</a> (<a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>, <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>);
<a id='L1552' name='L1552'></a>1552                 <strong class='reserved'>if</strong> (<a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>[1] != '\0')
<a id='L1553' name='L1553'></a>1553                     <a href='../Y/strcat.html' title='Multiple used in 15 places.'>strcat</a> (<a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>, <a href='../S/lib--global.h.html#L127' title='Defined at 127 in lib/global.h.'>PATH_SEP_STR</a>);
<a id='L1554' name='L1554'></a>1554                 <a href='../Y/strcat.html' title='Multiple used in 15 places.'>strcat</a> (<a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a> + 1, <a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>);
<a id='L1555' name='L1555'></a>1555             <em class='brace'>}</em>
<a id='L1556' name='L1556'></a>1556 
<a id='L1557' name='L1557'></a>1557             <strong class='reserved'>for</strong> (<a href='../Y/depth.html' title='Multiple used in 10 places.'>depth</a> = 0; <a href='../Y/depth.html' title='Multiple used in 10 places.'>depth</a> &lt; 100; <a href='../Y/depth.html' title='Multiple used in 10 places.'>depth</a>++)
<a id='L1558' name='L1558'></a>1558             <em class='brace'>{</em>                   <em class='comment'>/* depth protects against recursive symbolic links */</em>
<a id='L1559' name='L1559'></a>1559                 <a href='../S/lib--utilunix.c.html#L1059' title='Defined at 1059 in lib/utilunix.c.'>canonicalize_pathname</a> (<a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>);
<a id='L1560' name='L1560'></a>1560                 <a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a> = _get_file_entry_t (<a href='../Y/bucket.html' title='Multiple used in 58 places.'>bucket</a>, <a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>, 0, 0);
<a id='L1561' name='L1561'></a>1561                 <strong class='reserved'>if</strong> (<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1562' name='L1562'></a>1562                 <em class='brace'>{</em>
<a id='L1563' name='L1563'></a>1563                     <strong class='reserved'>if</strong> (<a href='../S/lib--fs.h.html#L36' title='Defined at 36 in lib/fs.h.'>S_ISLNK</a> (<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>.<a href='../Y/st_mode.html' title='Multiple used in 244 places.'>st_mode</a>) &amp;&amp; <a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/l_stat.html' title='Multiple used in 9 places.'>l_stat</a> == 0)
<a id='L1564' name='L1564'></a>1564                     <em class='brace'>{</em>
<a id='L1565' name='L1565'></a>1565                         <em class='comment'>/* Symlink points to link which isn't resolved, yet. */</em>
<a id='L1566' name='L1566'></a>1566                         <strong class='reserved'>if</strong> (<a href='../S/lib--global.h.html#L128' title='Defined at 128 in lib/global.h.'>IS_PATH_SEP</a> (<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>[0]))
<a id='L1567' name='L1567'></a>1567                         <em class='brace'>{</em>
<a id='L1568' name='L1568'></a>1568                             <strong class='reserved'>if</strong> (<a href='../Y/strlen.html' title='Multiple used in 281 places.'>strlen</a> (<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>) &gt;= <a href='../D/MC_MAXPATHLEN.html' title='Multiple defined in 2 places.'>MC_MAXPATHLEN</a>)
<a id='L1569' name='L1569'></a>1569                                 <strong class='reserved'>break</strong>;
<a id='L1570' name='L1570'></a>1570                             <a href='../Y/strcpy.html' title='Multiple used in 28 places.'>strcpy</a> (<a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>, <a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>);
<a id='L1571' name='L1571'></a>1571                         <em class='brace'>}</em>
<a id='L1572' name='L1572'></a>1572                         <strong class='reserved'>else</strong>
<a id='L1573' name='L1573'></a>1573                         <em class='brace'>{</em>
<a id='L1574' name='L1574'></a>1574                             <em class='comment'>/* at this point tmp looks always like this</em>
<a id='L1575' name='L1575'></a>1575 <em class='comment'>                               /directory/filename, i.e. no need to check</em>
<a id='L1576' name='L1576'></a>1576 <em class='comment'>                               strrchr's return value */</em>
<a id='L1577' name='L1577'></a>1577                             *(<a href='../D/strrchr.html' title='Multiple defined in 2 places.'>strrchr</a> (<a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>, <a href='../S/lib--global.h.html#L126' title='Defined at 126 in lib/global.h.'>PATH_SEP</a>) + 1) = '\0';      <em class='comment'>/* dirname */</em>
<a id='L1578' name='L1578'></a>1578                             <strong class='reserved'>if</strong> ((<a href='../Y/strlen.html' title='Multiple used in 281 places.'>strlen</a> (<a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>) + <a href='../Y/strlen.html' title='Multiple used in 281 places.'>strlen</a> (<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>)) &gt;= <a href='../D/MC_MAXPATHLEN.html' title='Multiple defined in 2 places.'>MC_MAXPATHLEN</a>)
<a id='L1579' name='L1579'></a>1579                                 <strong class='reserved'>break</strong>;
<a id='L1580' name='L1580'></a>1580                             <a href='../Y/strcat.html' title='Multiple used in 15 places.'>strcat</a> (<a href='../Y/tmp.html' title='Multiple used in 312 places.'>tmp</a>, <a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>);
<a id='L1581' name='L1581'></a>1581                         <em class='brace'>}</em>
<a id='L1582' name='L1582'></a>1582                         <strong class='reserved'>continue</strong>;
<a id='L1583' name='L1583'></a>1583                     <em class='brace'>}</em>
<a id='L1584' name='L1584'></a>1584                     <strong class='reserved'>else</strong>
<a id='L1585' name='L1585'></a>1585                     <em class='brace'>{</em>
<a id='L1586' name='L1586'></a>1586                         <a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/l_stat.html' title='Multiple used in 9 places.'>l_stat</a> = <a href='../Y/g_new.html' title='Multiple used in 66 places.'>g_new</a> (<strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a>, 1);
<a id='L1587' name='L1587'></a>1587                         <strong class='reserved'>if</strong> (<a href='../S/lib--fs.h.html#L36' title='Defined at 36 in lib/fs.h.'>S_ISLNK</a> (<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>.<a href='../Y/st_mode.html' title='Multiple used in 244 places.'>st_mode</a>))
<a id='L1588' name='L1588'></a>1588                             *<a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/l_stat.html' title='Multiple used in 9 places.'>l_stat</a> = *<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/l_stat.html' title='Multiple used in 9 places.'>l_stat</a>;
<a id='L1589' name='L1589'></a>1589                         <strong class='reserved'>else</strong>
<a id='L1590' name='L1590'></a>1590                             *<a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/l_stat.html' title='Multiple used in 9 places.'>l_stat</a> = <a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>;
<a id='L1591' name='L1591'></a>1591                         (*<a href='../Y/fel.html' title='Multiple used in 12 places.'>fel</a>-&gt;<a href='../Y/l_stat.html' title='Multiple used in 9 places.'>l_stat</a>).<a href='../Y/st_ino.html' title='Multiple used in 31 places.'>st_ino</a> = <a href='../Y/bucket.html' title='Multiple used in 58 places.'>bucket</a>-&gt;<a href='../Y/__inode_counter.html' title='Multiple used in 2 places.'>__inode_counter</a>++;
<a id='L1592' name='L1592'></a>1592                     <em class='brace'>}</em>
<a id='L1593' name='L1593'></a>1593                 <em class='brace'>}</em>
<a id='L1594' name='L1594'></a>1594                 <strong class='reserved'>break</strong>;
<a id='L1595' name='L1595'></a>1595             <em class='brace'>}</em>
<a id='L1596' name='L1596'></a>1596         <em class='brace'>}</em>
<a id='L1597' name='L1597'></a>1597     <em class='brace'>}</em>
<a id='L1598' name='L1598'></a>1598 
<a id='L1599' name='L1599'></a>1599     <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/symlink_status.html' title='Multiple used in 3 places.'>symlink_status</a> = <a href='../Y/FTPFS_RESOLVED_SYMLINKS.html' title='Multiple used in 2 places.'>FTPFS_RESOLVED_SYMLINKS</a>;
<a id='L1600' name='L1600'></a>1600 <em class='brace'>}</em>
<a id='L1601' name='L1601'></a>1601 
<a id='L1602' name='L1602'></a>1602 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1603' name='L1603'></a>1603 
<a id='L1604' name='L1604'></a>1604 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L1605' name='L1605'></a>1605 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1719' title='Referred from 1719 in src/vfs/ftpfs/ftpfs.c.'>resolve_symlink_with_ls_options</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>,
     <em class='comment'>/* <a href='#L1525'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1712'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1605 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1606' name='L1606'></a>1606                                  <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L84' title='Defined at 84 in lib/vfs/xdirentry.h.'>vfs_s_inode</a> *<a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>)
<a id='L1607' name='L1607'></a>1607 <em class='brace'>{</em>
<a id='L1608' name='L1608'></a>1608     <strong class='reserved'>char</strong> <a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>[2048] = "", *<a href='../Y/filename.html' title='Multiple used in 178 places.'>filename</a>;
<a id='L1609' name='L1609'></a>1609     <strong class='reserved'>int</strong> <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>;
<a id='L1610' name='L1610'></a>1610     <a href='../Y/FILE.html' title='Multiple used in 105 places.'>FILE</a> *<a href='../Y/fp.html' title='Multiple used in 100 places.'>fp</a>;
<a id='L1611' name='L1611'></a>1611     <strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>;
<a id='L1612' name='L1612'></a>1612     <strong class='reserved'>struct</strong> <a href='../Y/linklist.html' title='Multiple used in 7 places.'>linklist</a> *<a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a>;
<a id='L1613' name='L1613'></a>1613     <strong class='reserved'>struct</strong> <a href='../Y/direntry.html' title='Multiple used in 2 places.'>direntry</a> *<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>;
<a id='L1614' name='L1614'></a>1614     <strong class='reserved'>int</strong> <a href='../Y/switch_method.html' title='Multiple used in 2 places.'>switch_method</a> = 0;
<a id='L1615' name='L1615'></a>1615 
<a id='L1616' name='L1616'></a>1616     <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/symlink_status.html' title='Multiple used in 3 places.'>symlink_status</a> = <a href='../Y/FTPFS_RESOLVED_SYMLINKS.html' title='Multiple used in 2 places.'>FTPFS_RESOLVED_SYMLINKS</a>;
<a id='L1617' name='L1617'></a>1617     <strong class='reserved'>if</strong> (<a href='../D/strchr.html' title='Multiple defined in 2 places.'>strchr</a> (<a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>, ' ') == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1618' name='L1618'></a>1618         <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1384' title='Defined at 1384 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_data_connection</a> (<a href='../Y/bucket.html' title='Multiple used in 58 places.'>bucket</a>, "LIST -lLa", <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L177' title='Defined at 177 in src/vfs/ftpfs/ftpfs.c.'>TYPE_ASCII</a>, 0);
<a id='L1619' name='L1619'></a>1619     <strong class='reserved'>else</strong>
<a id='L1620' name='L1620'></a>1620     <em class='brace'>{</em>
<a id='L1621' name='L1621'></a>1621         <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2186' title='Defined at 2186 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_chdir_internal</a> (<a href='../Y/bucket.html' title='Multiple used in 58 places.'>bucket</a>, <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>) != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L1622' name='L1622'></a>1622         <em class='brace'>{</em>
<a id='L1623' name='L1623'></a>1623             <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: CWD failed."));
<a id='L1624' name='L1624'></a>1624             <strong class='reserved'>return</strong>;
<a id='L1625' name='L1625'></a>1625         <em class='brace'>}</em>
<a id='L1626' name='L1626'></a>1626 
<a id='L1627' name='L1627'></a>1627         <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1384' title='Defined at 1384 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_data_connection</a> (<a href='../Y/bucket.html' title='Multiple used in 58 places.'>bucket</a>, "LIST -lLa", ".", <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L177' title='Defined at 177 in src/vfs/ftpfs/ftpfs.c.'>TYPE_ASCII</a>, 0);
<a id='L1628' name='L1628'></a>1628     <em class='brace'>}</em>
<a id='L1629' name='L1629'></a>1629 
<a id='L1630' name='L1630'></a>1630     <strong class='reserved'>if</strong> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> == -1)
<a id='L1631' name='L1631'></a>1631     <em class='brace'>{</em>
<a id='L1632' name='L1632'></a>1632         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: couldn't resolve symlink"));
<a id='L1633' name='L1633'></a>1633         <strong class='reserved'>return</strong>;
<a id='L1634' name='L1634'></a>1634     <em class='brace'>}</em>
<a id='L1635' name='L1635'></a>1635 
<a id='L1636' name='L1636'></a>1636     <a href='../Y/fp.html' title='Multiple used in 100 places.'>fp</a> = <a href='../Y/fdopen.html' title='Multiple used in 4 places.'>fdopen</a> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, "r");
<a id='L1637' name='L1637'></a>1637     <strong class='reserved'>if</strong> (<a href='../Y/fp.html' title='Multiple used in 100 places.'>fp</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1638' name='L1638'></a>1638     <em class='brace'>{</em>
<a id='L1639' name='L1639'></a>1639         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>);
<a id='L1640' name='L1640'></a>1640         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: couldn't resolve symlink"));
<a id='L1641' name='L1641'></a>1641         <strong class='reserved'>return</strong>;
<a id='L1642' name='L1642'></a>1642     <em class='brace'>}</em>
<a id='L1643' name='L1643'></a>1643     <a href='../S/lib--tty--tty.c.html#L141' title='Defined at 141 in lib/tty/tty.c.'>tty_enable_interrupt_key</a> ();
<a id='L1644' name='L1644'></a>1644     <a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a> = <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/file_list.html' title='Multiple used in 15 places.'>file_list</a>-&gt;<a href='../Y/next.html' title='Multiple used in 271 places.'>next</a>;
<a id='L1645' name='L1645'></a>1645 
<a id='L1646' name='L1646'></a>1646     <strong class='reserved'>while</strong> (<a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>)
<a id='L1647' name='L1647'></a>1647     <em class='brace'>{</em>
<a id='L1648' name='L1648'></a>1648         <strong class='reserved'>do</strong>
<a id='L1649' name='L1649'></a>1649         <em class='brace'>{</em>
<a id='L1650' name='L1650'></a>1650             <strong class='reserved'>if</strong> (<a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a> == <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/file_list.html' title='Multiple used in 15 places.'>file_list</a>)
<a id='L1651' name='L1651'></a>1651                 <strong class='reserved'>goto</strong> <a href='../Y/done.html' title='Multiple used in 52 places.'>done</a>;
<a id='L1652' name='L1652'></a>1652 
<a id='L1653' name='L1653'></a>1653             <a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a> = <a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a>-&gt;<a href='../Y/data.html' title='Multiple used in 912 places.'>data</a>;
<a id='L1654' name='L1654'></a>1654             <a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a> = <a href='../Y/flist.html' title='Multiple used in 21 places.'>flist</a>-&gt;<a href='../Y/next.html' title='Multiple used in 271 places.'>next</a>;
<a id='L1655' name='L1655'></a>1655         <em class='brace'>}</em>
<a id='L1656' name='L1656'></a>1656         <strong class='reserved'>while</strong> (!<a href='../S/lib--fs.h.html#L36' title='Defined at 36 in lib/fs.h.'>S_ISLNK</a> (<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>.<a href='../Y/st_mode.html' title='Multiple used in 244 places.'>st_mode</a>));
<a id='L1657' name='L1657'></a>1657 
<a id='L1658' name='L1658'></a>1658         <strong class='reserved'>while</strong> (<a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>)
<a id='L1659' name='L1659'></a>1659         <em class='brace'>{</em>
<a id='L1660' name='L1660'></a>1660             <strong class='reserved'>if</strong> (<a href='../Y/fgets.html' title='Multiple used in 27 places.'>fgets</a> (<a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>), <a href='../Y/fp.html' title='Multiple used in 100 places.'>fp</a>) == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1661' name='L1661'></a>1661                 <strong class='reserved'>goto</strong> <a href='../Y/done.html' title='Multiple used in 52 places.'>done</a>;
<a id='L1662' name='L1662'></a>1662 
<a id='L1663' name='L1663'></a>1663             <strong class='reserved'>if</strong> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1664' name='L1664'></a>1664             <em class='brace'>{</em>
<a id='L1665' name='L1665'></a>1665                 <a href='../Y/fputs.html' title='Multiple used in 34 places.'>fputs</a> (<a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>, <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>);
<a id='L1666' name='L1666'></a>1666                 <a href='../Y/fflush.html' title='Multiple used in 33 places.'>fflush</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>);
<a id='L1667' name='L1667'></a>1667             <em class='brace'>}</em>
<a id='L1668' name='L1668'></a>1668 
<a id='L1669' name='L1669'></a>1669             <a href='../D/vfs_die.html' title='Multiple defined in 2 places.'>vfs_die</a> ("This code should be commented out\n");
<a id='L1670' name='L1670'></a>1670 
<a id='L1671' name='L1671'></a>1671             <strong class='reserved'>if</strong> (<a href='../S/lib--vfs--parse_ls_vga.c.html#L678' title='Defined at 678 in lib/vfs/parse_ls_vga.c.'>vfs_parse_ls_lga</a> (<a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>, &amp;<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>, &amp;<a href='../Y/filename.html' title='Multiple used in 178 places.'>filename</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>))
<a id='L1672' name='L1672'></a>1672             <em class='brace'>{</em>
<a id='L1673' name='L1673'></a>1673                 <strong class='reserved'>int</strong> <a href='../Y/r.html' title='Multiple used in 354 places.'>r</a>;
<a id='L1674' name='L1674'></a>1674 
<a id='L1675' name='L1675'></a>1675                 <a href='../Y/r.html' title='Multiple used in 354 places.'>r</a> = <a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>, <a href='../Y/filename.html' title='Multiple used in 178 places.'>filename</a>);
<a id='L1676' name='L1676'></a>1676                 <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/filename.html' title='Multiple used in 178 places.'>filename</a>);
<a id='L1677' name='L1677'></a>1677                 <strong class='reserved'>if</strong> (<a href='../Y/r.html' title='Multiple used in 354 places.'>r</a> == 0)
<a id='L1678' name='L1678'></a>1678                 <em class='brace'>{</em>
<a id='L1679' name='L1679'></a>1679                     <strong class='reserved'>if</strong> (<a href='../S/lib--fs.h.html#L36' title='Defined at 36 in lib/fs.h.'>S_ISLNK</a> (<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>.<a href='../Y/st_mode.html' title='Multiple used in 244 places.'>st_mode</a>))
<a id='L1680' name='L1680'></a>1680                     <em class='brace'>{</em>
<a id='L1681' name='L1681'></a>1681                         <em class='comment'>/* This server doesn't understand LIST -lLa */</em>
<a id='L1682' name='L1682'></a>1682                         <a href='../Y/switch_method.html' title='Multiple used in 2 places.'>switch_method</a> = 1;
<a id='L1683' name='L1683'></a>1683                         <strong class='reserved'>goto</strong> <a href='../Y/done.html' title='Multiple used in 52 places.'>done</a>;
<a id='L1684' name='L1684'></a>1684                     <em class='brace'>}</em>
<a id='L1685' name='L1685'></a>1685 
<a id='L1686' name='L1686'></a>1686                     <a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/l_stat.html' title='Multiple used in 9 places.'>l_stat</a> = <a href='../Y/g_try_new.html' title='Multiple used in 7 places.'>g_try_new</a> (<strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a>, 1);
<a id='L1687' name='L1687'></a>1687                     <strong class='reserved'>if</strong> (<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/l_stat.html' title='Multiple used in 9 places.'>l_stat</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1688' name='L1688'></a>1688                         <strong class='reserved'>goto</strong> <a href='../Y/done.html' title='Multiple used in 52 places.'>done</a>;
<a id='L1689' name='L1689'></a>1689 
<a id='L1690' name='L1690'></a>1690                     *<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/l_stat.html' title='Multiple used in 9 places.'>l_stat</a> = <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>;
<a id='L1691' name='L1691'></a>1691                     (*<a href='../Y/fe.html' title='Multiple used in 166 places.'>fe</a>-&gt;<a href='../Y/l_stat.html' title='Multiple used in 9 places.'>l_stat</a>).<a href='../Y/st_ino.html' title='Multiple used in 31 places.'>st_ino</a> = <a href='../Y/bucket.html' title='Multiple used in 58 places.'>bucket</a>-&gt;<a href='../Y/__inode_counter.html' title='Multiple used in 2 places.'>__inode_counter</a>++;
<a id='L1692' name='L1692'></a>1692                     <strong class='reserved'>break</strong>;
<a id='L1693' name='L1693'></a>1693                 <em class='brace'>}</em>
<a id='L1694' name='L1694'></a>1694 
<a id='L1695' name='L1695'></a>1695                 <strong class='reserved'>if</strong> (<a href='../Y/r.html' title='Multiple used in 354 places.'>r</a> &lt; 0)
<a id='L1696' name='L1696'></a>1696                     <strong class='reserved'>break</strong>;
<a id='L1697' name='L1697'></a>1697             <em class='brace'>}</em>
<a id='L1698' name='L1698'></a>1698         <em class='brace'>}</em>
<a id='L1699' name='L1699'></a>1699     <em class='brace'>}</em>
<a id='L1700' name='L1700'></a>1700 
<a id='L1701' name='L1701'></a>1701   <a href='../Y/done.html' title='Multiple used in 52 places.'>done</a>:
<a id='L1702' name='L1702'></a>1702     <strong class='reserved'>while</strong> (<a href='../Y/fgets.html' title='Multiple used in 27 places.'>fgets</a> (<a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>), <a href='../Y/fp.html' title='Multiple used in 100 places.'>fp</a>) != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1703' name='L1703'></a>1703         ;
<a id='L1704' name='L1704'></a>1704     <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L1705' name='L1705'></a>1705     <a href='../Y/fclose.html' title='Multiple used in 52 places.'>fclose</a> (<a href='../Y/fp.html' title='Multiple used in 100 places.'>fp</a>);
<a id='L1706' name='L1706'></a>1706     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, 0);
<a id='L1707' name='L1707'></a>1707 <em class='brace'>}</em>
<a id='L1708' name='L1708'></a>1708 
<a id='L1709' name='L1709'></a>1709 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1710' name='L1710'></a>1710 
<a id='L1711' name='L1711'></a>1711 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L1712' name='L1712'></a>1712 resolve_symlink (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L84' title='Defined at 84 in lib/vfs/xdirentry.h.'>vfs_s_inode</a> *<a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>)
     <em class='comment'>/* <a href='#L1605'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1726'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1712 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1713' name='L1713'></a>1713 <em class='brace'>{</em>
<a id='L1714' name='L1714'></a>1714     <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("Resolving symlink..."));
<a id='L1715' name='L1715'></a>1715 
<a id='L1716' name='L1716'></a>1716     <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;strict_rfc959_list_cmd)
<a id='L1717' name='L1717'></a>1717         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1525' title='Defined at 1525 in src/vfs/ftpfs/ftpfs.c.'>resolve_symlink_without_ls_options</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>);
<a id='L1718' name='L1718'></a>1718     <strong class='reserved'>else</strong>
<a id='L1719' name='L1719'></a>1719         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1605' title='Defined at 1605 in src/vfs/ftpfs/ftpfs.c.'>resolve_symlink_with_ls_options</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>);
<a id='L1720' name='L1720'></a>1720 <em class='brace'>}</em>
<a id='L1721' name='L1721'></a>1721 <em class='sharp'>#endif</em>
<a id='L1722' name='L1722'></a>1722 
<a id='L1723' name='L1723'></a>1723 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1724' name='L1724'></a>1724 
<a id='L1725' name='L1725'></a>1725 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L1726' name='L1726'></a>1726 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2722' title='Referred from 2722 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_dir_load</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L84' title='Defined at 84 in lib/vfs/xdirentry.h.'>vfs_s_inode</a> *<a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>, <strong class='reserved'>char</strong> *<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>)
     <em class='comment'>/* <a href='#L1712'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1865'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1726 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1727' name='L1727'></a>1727 <em class='brace'>{</em>
<a id='L1728' name='L1728'></a>1728     <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L76' title='Defined at 76 in lib/vfs/xdirentry.h.'>vfs_s_entry</a> *<a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a>;
<a id='L1729' name='L1729'></a>1729     <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a> = <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>;
<a id='L1730' name='L1730'></a>1730     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L1731' name='L1731'></a>1731     <strong class='reserved'>int</strong> <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/num_entries.html' title='Multiple used in 7 places.'>num_entries</a> = 0;
<a id='L1732' name='L1732'></a>1732     <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/cd_first.html' title='Multiple used in 8 places.'>cd_first</a>;
<a id='L1733' name='L1733'></a>1733 
<a id='L1734' name='L1734'></a>1734     <a href='../Y/cd_first.html' title='Multiple used in 8 places.'>cd_first</a> = <a href='../Y/ftpfs_first_cd_then_ls.html' title='Multiple used in 4 places.'>ftpfs_first_cd_then_ls</a> || (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/strict.html' title='Multiple used in 10 places.'>strict</a> == <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L166' title='Defined at 166 in src/vfs/ftpfs/ftpfs.c.'>RFC_STRICT</a>)
<a id='L1735' name='L1735'></a>1735         || (<a href='../D/strchr.html' title='Multiple defined in 2 places.'>strchr</a> (<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>, ' ') != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>);
<a id='L1736' name='L1736'></a>1736 
<a id='L1737' name='L1737'></a>1737   <a href='../Y/again.html' title='Multiple used in 17 places.'>again</a>:
<a id='L1738' name='L1738'></a>1738     <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: Reading FTP directory %s... %s%s"),
<a id='L1739' name='L1739'></a>1739                        <a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>,
<a id='L1740' name='L1740'></a>1740                        <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/strict.html' title='Multiple used in 10 places.'>strict</a> ==
<a id='L1741' name='L1741'></a>1741                        <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L166' title='Defined at 166 in src/vfs/ftpfs/ftpfs.c.'>RFC_STRICT</a> ? <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("(strict rfc959)") : "", <a href='../Y/cd_first.html' title='Multiple used in 8 places.'>cd_first</a> ? <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("(chdir first)") : "");
<a id='L1742' name='L1742'></a>1742 
<a id='L1743' name='L1743'></a>1743     <strong class='reserved'>if</strong> (<a href='../Y/cd_first.html' title='Multiple used in 8 places.'>cd_first</a> &amp;&amp; <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2186' title='Defined at 2186 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_chdir_internal</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>) != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L1744' name='L1744'></a>1744     <em class='brace'>{</em>
<a id='L1745' name='L1745'></a>1745         <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/ENOENT.html' title='Multiple used in 22 places.'>ENOENT</a>;
<a id='L1746' name='L1746'></a>1746         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: CWD failed."));
<a id='L1747' name='L1747'></a>1747         <strong class='reserved'>return</strong> (-1);
<a id='L1748' name='L1748'></a>1748     <em class='brace'>}</em>
<a id='L1749' name='L1749'></a>1749 
<a id='L1750' name='L1750'></a>1750     <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>-&gt;<a href='../Y/timestamp.html' title='Multiple used in 20 places.'>timestamp</a> = <a href='../Y/g_get_real_time.html' title='Multiple used in 11 places.'>g_get_real_time</a> () + <a href='../Y/ftpfs_directory_timeout.html' title='Multiple used in 6 places.'>ftpfs_directory_timeout</a> * <a href='../Y/G_USEC_PER_SEC.html' title='Multiple used in 11 places.'>G_USEC_PER_SEC</a>;
<a id='L1751' name='L1751'></a>1751 
<a id='L1752' name='L1752'></a>1752     <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/strict.html' title='Multiple used in 10 places.'>strict</a> == <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L166' title='Defined at 166 in src/vfs/ftpfs/ftpfs.c.'>RFC_STRICT</a>)
<a id='L1753' name='L1753'></a>1753         <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1384' title='Defined at 1384 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_data_connection</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, "LIST", 0, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L177' title='Defined at 177 in src/vfs/ftpfs/ftpfs.c.'>TYPE_ASCII</a>, 0);
<a id='L1754' name='L1754'></a>1754     <strong class='reserved'>else</strong> <strong class='reserved'>if</strong> (<a href='../Y/cd_first.html' title='Multiple used in 8 places.'>cd_first</a>)
<a id='L1755' name='L1755'></a>1755         <em class='comment'>/* Dirty hack to avoid autoprepending / to . */</em>
<a id='L1756' name='L1756'></a>1756         <em class='comment'>/* Wu-ftpd produces strange output for '/' if 'LIST -la .' used */</em>
<a id='L1757' name='L1757'></a>1757         <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1384' title='Defined at 1384 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_data_connection</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, "LIST -la", 0, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L177' title='Defined at 177 in src/vfs/ftpfs/ftpfs.c.'>TYPE_ASCII</a>, 0);
<a id='L1758' name='L1758'></a>1758     <strong class='reserved'>else</strong>
<a id='L1759' name='L1759'></a>1759     <em class='brace'>{</em>
<a id='L1760' name='L1760'></a>1760         <strong class='reserved'>char</strong> *<a href='../Y/path.html' title='Multiple used in 494 places.'>path</a>;
<a id='L1761' name='L1761'></a>1761 
<a id='L1762' name='L1762'></a>1762         <em class='comment'>/* Trailing "/." is necessary if remote_path is a symlink */</em>
<a id='L1763' name='L1763'></a>1763         <a href='../Y/path.html' title='Multiple used in 494 places.'>path</a> = <a href='../S/lib--utilunix.c.html#L1366' title='Defined at 1366 in lib/utilunix.c.'>mc_build_filename</a> (<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>, ".", (<strong class='reserved'>char</strong> *) <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>);
<a id='L1764' name='L1764'></a>1764         <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1384' title='Defined at 1384 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_data_connection</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, "LIST -la", <a href='../Y/path.html' title='Multiple used in 494 places.'>path</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L177' title='Defined at 177 in src/vfs/ftpfs/ftpfs.c.'>TYPE_ASCII</a>, 0);
<a id='L1765' name='L1765'></a>1765         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/path.html' title='Multiple used in 494 places.'>path</a>);
<a id='L1766' name='L1766'></a>1766     <em class='brace'>}</em>
<a id='L1767' name='L1767'></a>1767 
<a id='L1768' name='L1768'></a>1768     <strong class='reserved'>if</strong> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> == -1)
<a id='L1769' name='L1769'></a>1769     <em class='brace'>{</em>
<a id='L1770' name='L1770'></a>1770       <a href='../Y/fallback.html' title='Multiple used in 2 places.'>fallback</a>:
<a id='L1771' name='L1771'></a>1771         <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/strict.html' title='Multiple used in 10 places.'>strict</a> == <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L164' title='Defined at 164 in src/vfs/ftpfs/ftpfs.c.'>RFC_AUTODETECT</a>)
<a id='L1772' name='L1772'></a>1772         <em class='brace'>{</em>
<a id='L1773' name='L1773'></a>1773             <em class='comment'>/* It's our first attempt to get a directory listing from this</em>
<a id='L1774' name='L1774'></a>1774 <em class='comment'>               server (UNIX style LIST command) */</em>
<a id='L1775' name='L1775'></a>1775             <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/strict.html' title='Multiple used in 10 places.'>strict</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L166' title='Defined at 166 in src/vfs/ftpfs/ftpfs.c.'>RFC_STRICT</a>;
<a id='L1776' name='L1776'></a>1776             <em class='comment'>/* I hate goto, but recursive call needs another 8K on stack */</em>
<a id='L1777' name='L1777'></a>1777             <em class='comment'>/* return ftpfs_dir_load (me, dir, remote_path); */</em>
<a id='L1778' name='L1778'></a>1778             <a href='../Y/cd_first.html' title='Multiple used in 8 places.'>cd_first</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L1779' name='L1779'></a>1779             <strong class='reserved'>goto</strong> <a href='../Y/again.html' title='Multiple used in 17 places.'>again</a>;
<a id='L1780' name='L1780'></a>1780         <em class='brace'>}</em>
<a id='L1781' name='L1781'></a>1781 
<a id='L1782' name='L1782'></a>1782         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s", <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: failed; nowhere to fallback to"));
<a id='L1783' name='L1783'></a>1783         <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EACCES.html' title='Multiple used in 10 places.'>EACCES</a>, -1);
<a id='L1784' name='L1784'></a>1784     <em class='brace'>}</em>
<a id='L1785' name='L1785'></a>1785 
<a id='L1786' name='L1786'></a>1786     <a href='../S/lib--vfs--parse_ls_vga.c.html#L662' title='Defined at 662 in lib/vfs/parse_ls_vga.c.'>vfs_parse_ls_lga_init</a> ();
<a id='L1787' name='L1787'></a>1787 
<a id='L1788' name='L1788'></a>1788     <strong class='reserved'>while</strong> (<a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>)
<a id='L1789' name='L1789'></a>1789     <em class='brace'>{</em>
<a id='L1790' name='L1790'></a>1790         <strong class='reserved'>int</strong> <a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a>;
<a id='L1791' name='L1791'></a>1791         <a href='../Y/size_t.html' title='Multiple used in 726 places.'>size_t</a> <a href='../Y/count_spaces.html' title='Multiple used in 3 places.'>count_spaces</a> = 0;
<a id='L1792' name='L1792'></a>1792         <strong class='reserved'>int</strong> <a href='../Y/res.html' title='Multiple used in 390 places.'>res</a>;
<a id='L1793' name='L1793'></a>1793         <strong class='reserved'>char</strong> <a href='../Y/lc_buffer.html' title='Multiple used in 7 places.'>lc_buffer</a>[<a href='../S/lib--global.h.html#L108' title='Defined at 108 in lib/global.h.'>BUF_8K</a>] = "\0";
<a id='L1794' name='L1794'></a>1794 
<a id='L1795' name='L1795'></a>1795         <a href='../Y/res.html' title='Multiple used in 390 places.'>res</a> = <a href='../S/lib--vfs--direntry.c.html#L1671' title='Defined at 1671 in lib/vfs/direntry.c.'>vfs_s_get_line_interruptible</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/lc_buffer.html' title='Multiple used in 7 places.'>lc_buffer</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/lc_buffer.html' title='Multiple used in 7 places.'>lc_buffer</a>), <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>);
<a id='L1796' name='L1796'></a>1796         <strong class='reserved'>if</strong> (<a href='../Y/res.html' title='Multiple used in 390 places.'>res</a> == 0)
<a id='L1797' name='L1797'></a>1797             <strong class='reserved'>break</strong>;
<a id='L1798' name='L1798'></a>1798 
<a id='L1799' name='L1799'></a>1799         <strong class='reserved'>if</strong> (<a href='../Y/res.html' title='Multiple used in 390 places.'>res</a> == <a href='../Y/EINTR.html' title='Multiple used in 45 places.'>EINTR</a>)
<a id='L1800' name='L1800'></a>1800         <em class='brace'>{</em>
<a id='L1801' name='L1801'></a>1801             <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/verrno.html' title='Multiple used in 36 places.'>verrno</a> = <a href='../Y/ECONNRESET.html' title='Multiple used in 3 places.'>ECONNRESET</a>;
<a id='L1802' name='L1802'></a>1802             <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>);
<a id='L1803' name='L1803'></a>1803             <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1804' name='L1804'></a>1804             <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, 0);
<a id='L1805' name='L1805'></a>1805             <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("%s: failure"), <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>);
<a id='L1806' name='L1806'></a>1806             <strong class='reserved'>return</strong> (-1);
<a id='L1807' name='L1807'></a>1807         <em class='brace'>}</em>
<a id='L1808' name='L1808'></a>1808 
<a id='L1809' name='L1809'></a>1809         <strong class='reserved'>if</strong> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1810' name='L1810'></a>1810         <em class='brace'>{</em>
<a id='L1811' name='L1811'></a>1811             <a href='../Y/fputs.html' title='Multiple used in 34 places.'>fputs</a> (<a href='../Y/lc_buffer.html' title='Multiple used in 7 places.'>lc_buffer</a>, <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>);
<a id='L1812' name='L1812'></a>1812             <a href='../Y/fputs.html' title='Multiple used in 34 places.'>fputs</a> ("\n", <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>);
<a id='L1813' name='L1813'></a>1813             <a href='../Y/fflush.html' title='Multiple used in 33 places.'>fflush</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/logfile.html' title='Multiple used in 37 places.'>logfile</a>);
<a id='L1814' name='L1814'></a>1814         <em class='brace'>}</em>
<a id='L1815' name='L1815'></a>1815 
<a id='L1816' name='L1816'></a>1816         <a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a> = <a href='../S/lib--vfs--direntry.c.html#L1077' title='Defined at 1077 in lib/vfs/direntry.c.'>vfs_s_generate_entry</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>, 0);
<a id='L1817' name='L1817'></a>1817         <a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a> = <a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/st.html' title='Multiple used in 447 places.'>st</a>.<a href='../Y/st_nlink.html' title='Multiple used in 36 places.'>st_nlink</a>;
<a id='L1818' name='L1818'></a>1818 
<a id='L1819' name='L1819'></a>1819         <strong class='reserved'>if</strong> (!<a href='../S/lib--vfs--parse_ls_vga.c.html#L678' title='Defined at 678 in lib/vfs/parse_ls_vga.c.'>vfs_parse_ls_lga</a>
<a id='L1820' name='L1820'></a>1820             (<a href='../Y/lc_buffer.html' title='Multiple used in 7 places.'>lc_buffer</a>, &amp;<a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/st.html' title='Multiple used in 447 places.'>st</a>, &amp;<a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a>-&gt;<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>, &amp;<a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/linkname.html' title='Multiple used in 70 places.'>linkname</a>, &amp;<a href='../Y/count_spaces.html' title='Multiple used in 3 places.'>count_spaces</a>))
<a id='L1821' name='L1821'></a>1821             <a href='../S/lib--vfs--direntry.c.html#L963' title='Defined at 963 in lib/vfs/direntry.c.'>vfs_s_free_entry</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a>);
<a id='L1822' name='L1822'></a>1822         <strong class='reserved'>else</strong>
<a id='L1823' name='L1823'></a>1823         <em class='brace'>{</em>
<a id='L1824' name='L1824'></a>1824             <a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/st.html' title='Multiple used in 447 places.'>st</a>.<a href='../Y/st_nlink.html' title='Multiple used in 36 places.'>st_nlink</a> = <a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a>;  <em class='comment'>/* Ouch, we need to preserve our counts :-( */</em>
<a id='L1825' name='L1825'></a>1825             <a href='../Y/num_entries.html' title='Multiple used in 7 places.'>num_entries</a>++;
<a id='L1826' name='L1826'></a>1826             <a href='../S/lib--vfs--xdirentry.h.html#L197' title='Defined at 197 in lib/vfs/xdirentry.h.'>vfs_s_store_filename_leading_spaces</a> (<a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a>, <a href='../Y/count_spaces.html' title='Multiple used in 3 places.'>count_spaces</a>);
<a id='L1827' name='L1827'></a>1827             <a href='../S/lib--vfs--direntry.c.html#L982' title='Defined at 982 in lib/vfs/direntry.c.'>vfs_s_insert_entry</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>, <a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a>);
<a id='L1828' name='L1828'></a>1828         <em class='brace'>}</em>
<a id='L1829' name='L1829'></a>1829     <em class='brace'>}</em>
<a id='L1830' name='L1830'></a>1830 
<a id='L1831' name='L1831'></a>1831     <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>);
<a id='L1832' name='L1832'></a>1832     <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1833' name='L1833'></a>1833     <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/verrno.html' title='Multiple used in 36 places.'>verrno</a> = <a href='../D/E_REMOTE.html' title='Multiple defined in 2 places.'>E_REMOTE</a>;
<a id='L1834' name='L1834'></a>1834     <strong class='reserved'>if</strong> ((<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, 0) != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>))
<a id='L1835' name='L1835'></a>1835         <strong class='reserved'>goto</strong> <a href='../Y/fallback.html' title='Multiple used in 2 places.'>fallback</a>;
<a id='L1836' name='L1836'></a>1836 
<a id='L1837' name='L1837'></a>1837     <strong class='reserved'>if</strong> (<a href='../Y/num_entries.html' title='Multiple used in 7 places.'>num_entries</a> == 0 &amp;&amp; !<a href='../Y/cd_first.html' title='Multiple used in 8 places.'>cd_first</a>)
<a id='L1838' name='L1838'></a>1838     <em class='brace'>{</em>
<a id='L1839' name='L1839'></a>1839         <em class='comment'>/* The LIST command may produce an empty output. In such scenario</em>
<a id='L1840' name='L1840'></a>1840 <em class='comment'>           it is not clear whether this is caused by  'remote_path' being</em>
<a id='L1841' name='L1841'></a>1841 <em class='comment'>           a non-existent path or for some other reason (listing emtpy</em>
<a id='L1842' name='L1842'></a>1842 <em class='comment'>           directory without the -a option, non-readable directory, etc.).</em>
<a id='L1843' name='L1843'></a>1843 <em class='comment'></em>
<a id='L1844' name='L1844'></a>1844 <em class='comment'>           Since 'dir_load' is a crucial method, when it comes to determine</em>
<a id='L1845' name='L1845'></a>1845 <em class='comment'>           whether a given path is a _directory_, the code must try its best</em>
<a id='L1846' name='L1846'></a>1846 <em class='comment'>           to determine the type of 'remote_path'. The only reliable way to</em>
<a id='L1847' name='L1847'></a>1847 <em class='comment'>           achieve this is trough issuing a CWD command. */</em>
<a id='L1848' name='L1848'></a>1848 
<a id='L1849' name='L1849'></a>1849         <a href='../Y/cd_first.html' title='Multiple used in 8 places.'>cd_first</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L1850' name='L1850'></a>1850         <strong class='reserved'>goto</strong> <a href='../Y/again.html' title='Multiple used in 17 places.'>again</a>;
<a id='L1851' name='L1851'></a>1851     <em class='brace'>}</em>
<a id='L1852' name='L1852'></a>1852 
<a id='L1853' name='L1853'></a>1853     <a href='../S/lib--vfs--direntry.c.html#L1719' title='Defined at 1719 in lib/vfs/direntry.c.'>vfs_s_normalize_filename_leading_spaces</a> (<a href='../Y/dir.html' title='Multiple used in 454 places.'>dir</a>, <a href='../S/lib--vfs--parse_ls_vga.c.html#L670' title='Defined at 670 in lib/vfs/parse_ls_vga.c.'>vfs_parse_ls_lga_get_final_spaces</a> ());
<a id='L1854' name='L1854'></a>1854 
<a id='L1855' name='L1855'></a>1855     <strong class='reserved'>if</strong> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/strict.html' title='Multiple used in 10 places.'>strict</a> == <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L164' title='Defined at 164 in src/vfs/ftpfs/ftpfs.c.'>RFC_AUTODETECT</a>)
<a id='L1856' name='L1856'></a>1856         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/strict.html' title='Multiple used in 10 places.'>strict</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L165' title='Defined at 165 in src/vfs/ftpfs/ftpfs.c.'>RFC_DARING</a>;
<a id='L1857' name='L1857'></a>1857 
<a id='L1858' name='L1858'></a>1858     <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> (<a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("%s: done."), <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>);
<a id='L1859' name='L1859'></a>1859     <strong class='reserved'>return</strong> 0;
<a id='L1860' name='L1860'></a>1860 <em class='brace'>}</em>
<a id='L1861' name='L1861'></a>1861 
<a id='L1862' name='L1862'></a>1862 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1863' name='L1863'></a>1863 
<a id='L1864' name='L1864'></a>1864 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L1865' name='L1865'></a>1865 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2723' title='Referred from 2723 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_file_store</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/lib--vfs--xdirentry.h.html#L106' title='Defined at 106 in lib/vfs/xdirentry.h.'>vfs_file_handler_t</a> * <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>, <strong class='reserved'>char</strong> *<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>, <strong class='reserved'>char</strong> *<a href='../Y/localname.html' title='Multiple used in 43 places.'>localname</a>)
     <em class='comment'>/* <a href='#L1726'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1972'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1865 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1866' name='L1866'></a>1866 <em class='brace'>{</em>
<a id='L1867' name='L1867'></a>1867     <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a> = <a href='../S/lib--vfs--xdirentry.h.html#L44' title='Defined at 44 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER_SUPER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>);
<a id='L1868' name='L1868'></a>1868     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L1869' name='L1869'></a>1869     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L232' title='Defined at 232 in src/vfs/ftpfs/ftpfs.c.'>ftp_file_handler_t</a> *<a href='../Y/ftp.html' title='Multiple used in 7 places.'>ftp</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L157' title='Defined at 157 in src/vfs/ftpfs/ftpfs.c.'>FTP_FILE_HANDLER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>);
<a id='L1870' name='L1870'></a>1870 
<a id='L1871' name='L1871'></a>1871     <strong class='reserved'>int</strong> <a href='../Y/h.html' title='Multiple used in 470 places.'>h</a>, <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>;
<a id='L1872' name='L1872'></a>1872     <a href='../Y/off_t.html' title='Multiple used in 521 places.'>off_t</a> <a href='../Y/n_stored.html' title='Multiple used in 3 places.'>n_stored</a> = 0;
<a id='L1873' name='L1873'></a>1873 <em class='sharp'>#ifdef</em> <a href='../Y/HAVE_STRUCT_LINGER_L_LINGER.html' title='Multiple used in 4 places.'>HAVE_STRUCT_LINGER_L_LINGER</a>
<a id='L1874' name='L1874'></a>1874     <strong class='reserved'>struct</strong> <a href='../Y/linger.html' title='Multiple used in 2 places.'>linger</a> <a href='../Y/li.html' title='Multiple used in 21 places.'>li</a>;
<a id='L1875' name='L1875'></a>1875 <em class='sharp'>#else</em>
<a id='L1876' name='L1876'></a>1876     <strong class='reserved'>int</strong> <a href='../Y/flag_one.html' title='Multiple used in 2 places.'>flag_one</a> = 1;
<a id='L1877' name='L1877'></a>1877 <em class='sharp'>#endif</em>
<a id='L1878' name='L1878'></a>1878     <strong class='reserved'>char</strong> <a href='../Y/lc_buffer.html' title='Multiple used in 7 places.'>lc_buffer</a>[<a href='../S/lib--global.h.html#L108' title='Defined at 108 in lib/global.h.'>BUF_8K</a>];
<a id='L1879' name='L1879'></a>1879     <strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>;
<a id='L1880' name='L1880'></a>1880     <strong class='reserved'>char</strong> *<a href='../Y/w_buf.html' title='Multiple used in 4 places.'>w_buf</a>;
<a id='L1881' name='L1881'></a>1881 
<a id='L1882' name='L1882'></a>1882     <a href='../Y/h.html' title='Multiple used in 470 places.'>h</a> = <a href='../Y/open.html' title='Multiple used in 47 places.'>open</a> (<a href='../Y/localname.html' title='Multiple used in 43 places.'>localname</a>, <a href='../Y/O_RDONLY.html' title='Multiple used in 44 places.'>O_RDONLY</a>);
<a id='L1883' name='L1883'></a>1883     <strong class='reserved'>if</strong> (<a href='../Y/h.html' title='Multiple used in 470 places.'>h</a> == -1)
<a id='L1884' name='L1884'></a>1884         <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EIO.html' title='Multiple used in 28 places.'>EIO</a>, -1);
<a id='L1885' name='L1885'></a>1885 
<a id='L1886' name='L1886'></a>1886     <strong class='reserved'>if</strong> (<a href='../Y/fstat.html' title='Multiple used in 20 places.'>fstat</a> (<a href='../Y/h.html' title='Multiple used in 470 places.'>h</a>, &amp;<a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>) == -1)
<a id='L1887' name='L1887'></a>1887     <em class='brace'>{</em>
<a id='L1888' name='L1888'></a>1888         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/h.html' title='Multiple used in 470 places.'>h</a>);
<a id='L1889' name='L1889'></a>1889         <strong class='reserved'>return</strong> (-1);
<a id='L1890' name='L1890'></a>1890     <em class='brace'>}</em>
<a id='L1891' name='L1891'></a>1891 
<a id='L1892' name='L1892'></a>1892     <a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> =
<a id='L1893' name='L1893'></a>1893         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1384' title='Defined at 1384 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_data_connection</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/ftp.html' title='Multiple used in 7 places.'>ftp</a>-&gt;<a href='../Y/append.html' title='Multiple used in 8 places.'>append</a> ? "APPE" : "STOR", <a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L178' title='Defined at 178 in src/vfs/ftpfs/ftpfs.c.'>TYPE_BINARY</a>, 0);
<a id='L1894' name='L1894'></a>1894     <strong class='reserved'>if</strong> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> &lt; 0)
<a id='L1895' name='L1895'></a>1895     <em class='brace'>{</em>
<a id='L1896' name='L1896'></a>1896         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/h.html' title='Multiple used in 470 places.'>h</a>);
<a id='L1897' name='L1897'></a>1897         <strong class='reserved'>return</strong> (-1);
<a id='L1898' name='L1898'></a>1898     <em class='brace'>}</em>
<a id='L1899' name='L1899'></a>1899 <em class='sharp'>#ifdef</em> <a href='../Y/HAVE_STRUCT_LINGER_L_LINGER.html' title='Multiple used in 4 places.'>HAVE_STRUCT_LINGER_L_LINGER</a>
<a id='L1900' name='L1900'></a>1900     <a href='../Y/li.html' title='Multiple used in 21 places.'>li</a>.<a href='../Y/l_onoff.html' title='Multiple used in 2 places.'>l_onoff</a> = 1;
<a id='L1901' name='L1901'></a>1901     <a href='../Y/li.html' title='Multiple used in 21 places.'>li</a>.<a href='../Y/l_linger.html' title='Multiple used in 2 places.'>l_linger</a> = 120;
<a id='L1902' name='L1902'></a>1902     <a href='../Y/setsockopt.html' title='Multiple used in 6 places.'>setsockopt</a> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/SOL_SOCKET.html' title='Multiple used in 14 places.'>SOL_SOCKET</a>, <a href='../Y/SO_LINGER.html' title='Multiple used in 3 places.'>SO_LINGER</a>, (<strong class='reserved'>char</strong> *) &amp;<a href='../Y/li.html' title='Multiple used in 21 places.'>li</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/li.html' title='Multiple used in 21 places.'>li</a>));
<a id='L1903' name='L1903'></a>1903 <em class='sharp'>#else</em>
<a id='L1904' name='L1904'></a>1904     <a href='../Y/setsockopt.html' title='Multiple used in 6 places.'>setsockopt</a> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/SOL_SOCKET.html' title='Multiple used in 14 places.'>SOL_SOCKET</a>, <a href='../Y/SO_LINGER.html' title='Multiple used in 3 places.'>SO_LINGER</a>, &amp;<a href='../Y/flag_one.html' title='Multiple used in 2 places.'>flag_one</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/flag_one.html' title='Multiple used in 2 places.'>flag_one</a>));
<a id='L1905' name='L1905'></a>1905 <em class='sharp'>#endif</em>
<a id='L1906' name='L1906'></a>1906 
<a id='L1907' name='L1907'></a>1907     <a href='../S/lib--tty--tty.c.html#L141' title='Defined at 141 in lib/tty/tty.c.'>tty_enable_interrupt_key</a> ();
<a id='L1908' name='L1908'></a>1908     <strong class='reserved'>while</strong> (<a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>)
<a id='L1909' name='L1909'></a>1909     <em class='brace'>{</em>
<a id='L1910' name='L1910'></a>1910         <a href='../Y/ssize_t.html' title='Multiple used in 151 places.'>ssize_t</a> <a href='../Y/n_read.html' title='Multiple used in 17 places.'>n_read</a>, <a href='../Y/n_written.html' title='Multiple used in 11 places.'>n_written</a>;
<a id='L1911' name='L1911'></a>1911 
<a id='L1912' name='L1912'></a>1912         <strong class='reserved'>while</strong> ((<a href='../Y/n_read.html' title='Multiple used in 17 places.'>n_read</a> = <a href='../Y/read.html' title='Multiple used in 82 places.'>read</a> (<a href='../Y/h.html' title='Multiple used in 470 places.'>h</a>, <a href='../Y/lc_buffer.html' title='Multiple used in 7 places.'>lc_buffer</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/lc_buffer.html' title='Multiple used in 7 places.'>lc_buffer</a>))) == -1)
<a id='L1913' name='L1913'></a>1913         <em class='brace'>{</em>
<a id='L1914' name='L1914'></a>1914             <strong class='reserved'>if</strong> (<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a> != <a href='../Y/EINTR.html' title='Multiple used in 45 places.'>EINTR</a>)
<a id='L1915' name='L1915'></a>1915             <em class='brace'>{</em>
<a id='L1916' name='L1916'></a>1916                 <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a>;
<a id='L1917' name='L1917'></a>1917                 <strong class='reserved'>goto</strong> <a href='../Y/error_return.html' title='Multiple used in 6 places.'>error_return</a>;
<a id='L1918' name='L1918'></a>1918             <em class='brace'>}</em>
<a id='L1919' name='L1919'></a>1919             <strong class='reserved'>if</strong> (<a href='../S/lib--tty--tty.c.html#L168' title='Defined at 168 in lib/tty/tty.c.'>tty_got_interrupt</a> ())
<a id='L1920' name='L1920'></a>1920             <em class='brace'>{</em>
<a id='L1921' name='L1921'></a>1921                 <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/EINTR.html' title='Multiple used in 45 places.'>EINTR</a>;
<a id='L1922' name='L1922'></a>1922                 <strong class='reserved'>goto</strong> <a href='../Y/error_return.html' title='Multiple used in 6 places.'>error_return</a>;
<a id='L1923' name='L1923'></a>1923             <em class='brace'>}</em>
<a id='L1924' name='L1924'></a>1924         <em class='brace'>}</em>
<a id='L1925' name='L1925'></a>1925         <strong class='reserved'>if</strong> (<a href='../Y/n_read.html' title='Multiple used in 17 places.'>n_read</a> == 0)
<a id='L1926' name='L1926'></a>1926             <strong class='reserved'>break</strong>;
<a id='L1927' name='L1927'></a>1927 
<a id='L1928' name='L1928'></a>1928         <a href='../Y/n_stored.html' title='Multiple used in 3 places.'>n_stored</a> += <a href='../Y/n_read.html' title='Multiple used in 17 places.'>n_read</a>;
<a id='L1929' name='L1929'></a>1929         <a href='../Y/w_buf.html' title='Multiple used in 4 places.'>w_buf</a> = <a href='../Y/lc_buffer.html' title='Multiple used in 7 places.'>lc_buffer</a>;
<a id='L1930' name='L1930'></a>1930 
<a id='L1931' name='L1931'></a>1931         <strong class='reserved'>while</strong> ((<a href='../Y/n_written.html' title='Multiple used in 11 places.'>n_written</a> = <a href='../Y/write.html' title='Multiple used in 59 places.'>write</a> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/w_buf.html' title='Multiple used in 4 places.'>w_buf</a>, <a href='../Y/n_read.html' title='Multiple used in 17 places.'>n_read</a>)) != <a href='../Y/n_read.html' title='Multiple used in 17 places.'>n_read</a>)
<a id='L1932' name='L1932'></a>1932         <em class='brace'>{</em>
<a id='L1933' name='L1933'></a>1933             <strong class='reserved'>if</strong> (<a href='../Y/n_written.html' title='Multiple used in 11 places.'>n_written</a> == -1)
<a id='L1934' name='L1934'></a>1934             <em class='brace'>{</em>
<a id='L1935' name='L1935'></a>1935                 <strong class='reserved'>if</strong> (<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a> == <a href='../Y/EINTR.html' title='Multiple used in 45 places.'>EINTR</a> &amp;&amp; !<a href='../S/lib--tty--tty.c.html#L168' title='Defined at 168 in lib/tty/tty.c.'>tty_got_interrupt</a> ())
<a id='L1936' name='L1936'></a>1936                     <strong class='reserved'>continue</strong>;
<a id='L1937' name='L1937'></a>1937 
<a id='L1938' name='L1938'></a>1938                 <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a>;
<a id='L1939' name='L1939'></a>1939                 <strong class='reserved'>goto</strong> <a href='../Y/error_return.html' title='Multiple used in 6 places.'>error_return</a>;
<a id='L1940' name='L1940'></a>1940             <em class='brace'>}</em>
<a id='L1941' name='L1941'></a>1941 
<a id='L1942' name='L1942'></a>1942             <a href='../Y/w_buf.html' title='Multiple used in 4 places.'>w_buf</a> += <a href='../Y/n_written.html' title='Multiple used in 11 places.'>n_written</a>;
<a id='L1943' name='L1943'></a>1943             <a href='../Y/n_read.html' title='Multiple used in 17 places.'>n_read</a> -= <a href='../Y/n_written.html' title='Multiple used in 11 places.'>n_written</a>;
<a id='L1944' name='L1944'></a>1944         <em class='brace'>}</em>
<a id='L1945' name='L1945'></a>1945 
<a id='L1946' name='L1946'></a>1946         <a href='../S/lib--vfs--vfs.c.html#L617' title='Defined at 617 in lib/vfs/vfs.c.'>vfs_print_message</a> ("%s: %" <a href='../Y/PRIuMAX.html' title='Multiple used in 20 places.'>PRIuMAX</a> "/%" <a href='../Y/PRIuMAX.html' title='Multiple used in 20 places.'>PRIuMAX</a>,
<a id='L1947' name='L1947'></a>1947                            <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("ftpfs: storing file"), (<a href='../Y/uintmax_t.html' title='Multiple used in 86 places.'>uintmax_t</a>) <a href='../Y/n_stored.html' title='Multiple used in 3 places.'>n_stored</a>, (<a href='../Y/uintmax_t.html' title='Multiple used in 86 places.'>uintmax_t</a>) <a href='../Y/s.html' title='Multiple used in 1155 places.'>s</a>.<a href='../Y/st_size.html' title='Multiple used in 101 places.'>st_size</a>);
<a id='L1948' name='L1948'></a>1948     <em class='brace'>}</em>
<a id='L1949' name='L1949'></a>1949     <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L1950' name='L1950'></a>1950 
<a id='L1951' name='L1951'></a>1951     <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>);
<a id='L1952' name='L1952'></a>1952     <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1953' name='L1953'></a>1953     <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/h.html' title='Multiple used in 470 places.'>h</a>);
<a id='L1954' name='L1954'></a>1954 
<a id='L1955' name='L1955'></a>1955     <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, 0) != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L1956' name='L1956'></a>1956         <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EIO.html' title='Multiple used in 28 places.'>EIO</a>, -1);
<a id='L1957' name='L1957'></a>1957     <strong class='reserved'>return</strong> 0;
<a id='L1958' name='L1958'></a>1958 
<a id='L1959' name='L1959'></a>1959   <a href='../Y/error_return.html' title='Multiple used in 6 places.'>error_return</a>:
<a id='L1960' name='L1960'></a>1960     <a href='../S/lib--tty--tty.c.html#L155' title='Defined at 155 in lib/tty/tty.c.'>tty_disable_interrupt_key</a> ();
<a id='L1961' name='L1961'></a>1961     <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>);
<a id='L1962' name='L1962'></a>1962     <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1963' name='L1963'></a>1963     <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/h.html' title='Multiple used in 470 places.'>h</a>);
<a id='L1964' name='L1964'></a>1964 
<a id='L1965' name='L1965'></a>1965     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, 0);
<a id='L1966' name='L1966'></a>1966     <strong class='reserved'>return</strong> (-1);
<a id='L1967' name='L1967'></a>1967 <em class='brace'>}</em>
<a id='L1968' name='L1968'></a>1968 
<a id='L1969' name='L1969'></a>1969 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1970' name='L1970'></a>1970 
<a id='L1971' name='L1971'></a>1971 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L1972' name='L1972'></a>1972 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2724' title='Referred from 2724 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_linear_start</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/lib--vfs--xdirentry.h.html#L106' title='Defined at 106 in lib/vfs/xdirentry.h.'>vfs_file_handler_t</a> * <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>, <a href='../Y/off_t.html' title='Multiple used in 521 places.'>off_t</a> <a href='../Y/offset.html' title='Multiple used in 365 places.'>offset</a>)
     <em class='comment'>/* <a href='#L1865'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L1995'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1972 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1973' name='L1973'></a>1973 <em class='brace'>{</em>
<a id='L1974' name='L1974'></a>1974     <strong class='reserved'>char</strong> *<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>;
<a id='L1975' name='L1975'></a>1975 
<a id='L1976' name='L1976'></a>1976     <a href='../Y/name.html' title='Multiple used in 736 places.'>name</a> = <a href='../S/lib--vfs--direntry.c.html#L1244' title='Defined at 1244 in lib/vfs/direntry.c.'>vfs_s_fullpath</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>);
<a id='L1977' name='L1977'></a>1977     <strong class='reserved'>if</strong> (<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L1978' name='L1978'></a>1978         <strong class='reserved'>return</strong> 0;
<a id='L1979' name='L1979'></a>1979 
<a id='L1980' name='L1980'></a>1980     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L158' title='Defined at 158 in src/vfs/ftpfs/ftpfs.c.'>FH_SOCK</a> =
<a id='L1981' name='L1981'></a>1981         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1384' title='Defined at 1384 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_data_connection</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/lib--vfs--xdirentry.h.html#L44' title='Defined at 44 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER_SUPER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>), "RETR", <a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L178' title='Defined at 178 in src/vfs/ftpfs/ftpfs.c.'>TYPE_BINARY</a>,
<a id='L1982' name='L1982'></a>1982                                     <a href='../Y/offset.html' title='Multiple used in 365 places.'>offset</a>);
<a id='L1983' name='L1983'></a>1983     <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>);
<a id='L1984' name='L1984'></a>1984     <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L158' title='Defined at 158 in src/vfs/ftpfs/ftpfs.c.'>FH_SOCK</a> == -1)
<a id='L1985' name='L1985'></a>1985         <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EACCES.html' title='Multiple used in 10 places.'>EACCES</a>, 0);
<a id='L1986' name='L1986'></a>1986 
<a id='L1987' name='L1987'></a>1987     <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/linear.html' title='Multiple used in 15 places.'>linear</a> = <a href='../S/lib--vfs--xdirentry.h.html#L52' title='Defined at 52 in lib/vfs/xdirentry.h.'>LS_LINEAR_OPEN</a>;
<a id='L1988' name='L1988'></a>1988     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L157' title='Defined at 157 in src/vfs/ftpfs/ftpfs.c.'>FTP_FILE_HANDLER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>)-&gt;<a href='../Y/append.html' title='Multiple used in 8 places.'>append</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L1989' name='L1989'></a>1989     <strong class='reserved'>return</strong> 1;
<a id='L1990' name='L1990'></a>1990 <em class='brace'>}</em>
<a id='L1991' name='L1991'></a>1991 
<a id='L1992' name='L1992'></a>1992 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L1993' name='L1993'></a>1993 
<a id='L1994' name='L1994'></a>1994 <strong class='reserved'>static</strong> <a href='../Y/ssize_t.html' title='Multiple used in 151 places.'>ssize_t</a>
<a id='L1995' name='L1995'></a>1995 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2725' title='Referred from 2725 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_linear_read</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/lib--vfs--xdirentry.h.html#L106' title='Defined at 106 in lib/vfs/xdirentry.h.'>vfs_file_handler_t</a> * <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>, <strong class='reserved'>void</strong> *<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>, <a href='../Y/size_t.html' title='Multiple used in 726 places.'>size_t</a> <a href='../Y/len.html' title='Multiple used in 1086 places.'>len</a>)
     <em class='comment'>/* <a href='#L1972'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2025'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+1995 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L1996' name='L1996'></a>1996 <em class='brace'>{</em>
<a id='L1997' name='L1997'></a>1997     <a href='../Y/ssize_t.html' title='Multiple used in 151 places.'>ssize_t</a> <a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>;
<a id='L1998' name='L1998'></a>1998     <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a> = <a href='../S/lib--vfs--xdirentry.h.html#L44' title='Defined at 44 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER_SUPER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>);
<a id='L1999' name='L1999'></a>1999 
<a id='L2000' name='L2000'></a>2000     <strong class='reserved'>while</strong> ((<a href='../Y/n.html' title='Multiple used in 370 places.'>n</a> = <a href='../Y/read.html' title='Multiple used in 82 places.'>read</a> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L158' title='Defined at 158 in src/vfs/ftpfs/ftpfs.c.'>FH_SOCK</a>, <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>, <a href='../Y/len.html' title='Multiple used in 1086 places.'>len</a>)) &lt; 0)
<a id='L2001' name='L2001'></a>2001     <em class='brace'>{</em>
<a id='L2002' name='L2002'></a>2002         <strong class='reserved'>if</strong> ((<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a> == <a href='../Y/EINTR.html' title='Multiple used in 45 places.'>EINTR</a>) &amp;&amp; !<a href='../S/lib--tty--tty.c.html#L168' title='Defined at 168 in lib/tty/tty.c.'>tty_got_interrupt</a> ())
<a id='L2003' name='L2003'></a>2003             <strong class='reserved'>continue</strong>;
<a id='L2004' name='L2004'></a>2004         <strong class='reserved'>break</strong>;
<a id='L2005' name='L2005'></a>2005     <em class='brace'>}</em>
<a id='L2006' name='L2006'></a>2006 
<a id='L2007' name='L2007'></a>2007     <strong class='reserved'>if</strong> (<a href='../Y/n.html' title='Multiple used in 370 places.'>n</a> &lt; 0)
<a id='L2008' name='L2008'></a>2008         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1457' title='Defined at 1457 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_linear_abort</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>);
<a id='L2009' name='L2009'></a>2009     <strong class='reserved'>else</strong> <strong class='reserved'>if</strong> (<a href='../Y/n.html' title='Multiple used in 370 places.'>n</a> == 0)
<a id='L2010' name='L2010'></a>2010     <em class='brace'>{</em>
<a id='L2011' name='L2011'></a>2011         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L2012' name='L2012'></a>2012         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L158' title='Defined at 158 in src/vfs/ftpfs/ftpfs.c.'>FH_SOCK</a>);
<a id='L2013' name='L2013'></a>2013         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L158' title='Defined at 158 in src/vfs/ftpfs/ftpfs.c.'>FH_SOCK</a> = -1;
<a id='L2014' name='L2014'></a>2014         <strong class='reserved'>if</strong> ((<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, 0) != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>))
<a id='L2015' name='L2015'></a>2015             <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../D/E_REMOTE.html' title='Multiple defined in 2 places.'>E_REMOTE</a>, -1);
<a id='L2016' name='L2016'></a>2016         <strong class='reserved'>return</strong> 0;
<a id='L2017' name='L2017'></a>2017     <em class='brace'>}</em>
<a id='L2018' name='L2018'></a>2018 
<a id='L2019' name='L2019'></a>2019     <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a>, <a href='../Y/n.html' title='Multiple used in 370 places.'>n</a>);
<a id='L2020' name='L2020'></a>2020 <em class='brace'>}</em>
<a id='L2021' name='L2021'></a>2021 
<a id='L2022' name='L2022'></a>2022 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2023' name='L2023'></a>2023 
<a id='L2024' name='L2024'></a>2024 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L2025' name='L2025'></a>2025 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2726' title='Referred from 2726 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_linear_close</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/lib--vfs--xdirentry.h.html#L106' title='Defined at 106 in lib/vfs/xdirentry.h.'>vfs_file_handler_t</a> * <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>)
     <em class='comment'>/* <a href='#L1995'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2034'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2025 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2026' name='L2026'></a>2026 <em class='brace'>{</em>
<a id='L2027' name='L2027'></a>2027     <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L158' title='Defined at 158 in src/vfs/ftpfs/ftpfs.c.'>FH_SOCK</a> != -1)
<a id='L2028' name='L2028'></a>2028         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1457' title='Defined at 1457 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_linear_abort</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>);
<a id='L2029' name='L2029'></a>2029 <em class='brace'>}</em>
<a id='L2030' name='L2030'></a>2030 
<a id='L2031' name='L2031'></a>2031 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2032' name='L2032'></a>2032 
<a id='L2033' name='L2033'></a>2033 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2034' name='L2034'></a>2034 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2714' title='Referred from 2714 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_ctl</a> (<strong class='reserved'>void</strong> *<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>, <strong class='reserved'>int</strong> <a href='../Y/ctlop.html' title='Multiple used in 20 places.'>ctlop</a>, <strong class='reserved'>void</strong> *<a href='../Y/arg.html' title='Multiple used in 58 places.'>arg</a>)
     <em class='comment'>/* <a href='#L2025'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2061'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2034 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2035' name='L2035'></a>2035 <em class='brace'>{</em>
<a id='L2036' name='L2036'></a>2036     (<strong class='reserved'>void</strong>) <a href='../Y/arg.html' title='Multiple used in 58 places.'>arg</a>;
<a id='L2037' name='L2037'></a>2037 
<a id='L2038' name='L2038'></a>2038     <strong class='reserved'>switch</strong> (<a href='../Y/ctlop.html' title='Multiple used in 20 places.'>ctlop</a>)
<a id='L2039' name='L2039'></a>2039     <em class='brace'>{</em>
<a id='L2040' name='L2040'></a>2040     <strong class='reserved'>case</strong> <a href='../S/lib--vfs--vfs.h.html#L125' title='Defined at 125 in lib/vfs/vfs.h.'>VFS_CTL_IS_NOTREADY</a>:
<a id='L2041' name='L2041'></a>2041         <em class='brace'>{</em>
<a id='L2042' name='L2042'></a>2042             <a href='../S/lib--vfs--xdirentry.h.html#L106' title='Defined at 106 in lib/vfs/xdirentry.h.'>vfs_file_handler_t</a> *<a href='../Y/file.html' title='Multiple used in 289 places.'>file</a> = <a href='../S/lib--vfs--xdirentry.h.html#L43' title='Defined at 43 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>);
<a id='L2043' name='L2043'></a>2043             <strong class='reserved'>int</strong> <a href='../Y/v.html' title='Multiple used in 86 places.'>v</a>;
<a id='L2044' name='L2044'></a>2044 
<a id='L2045' name='L2045'></a>2045             <strong class='reserved'>if</strong> (<a href='../Y/file.html' title='Multiple used in 289 places.'>file</a>-&gt;<a href='../Y/linear.html' title='Multiple used in 15 places.'>linear</a> == <a href='../S/lib--vfs--xdirentry.h.html#L50' title='Defined at 50 in lib/vfs/xdirentry.h.'>LS_NOT_LINEAR</a>)
<a id='L2046' name='L2046'></a>2046                 <a href='../D/vfs_die.html' title='Multiple defined in 2 places.'>vfs_die</a> ("You may not do this");
<a id='L2047' name='L2047'></a>2047             <strong class='reserved'>if</strong> (<a href='../Y/file.html' title='Multiple used in 289 places.'>file</a>-&gt;<a href='../Y/linear.html' title='Multiple used in 15 places.'>linear</a> == <a href='../S/lib--vfs--xdirentry.h.html#L51' title='Defined at 51 in lib/vfs/xdirentry.h.'>LS_LINEAR_CLOSED</a> || <a href='../Y/file.html' title='Multiple used in 289 places.'>file</a>-&gt;<a href='../Y/linear.html' title='Multiple used in 15 places.'>linear</a> == <a href='../S/lib--vfs--xdirentry.h.html#L53' title='Defined at 53 in lib/vfs/xdirentry.h.'>LS_LINEAR_PREOPEN</a>)
<a id='L2048' name='L2048'></a>2048                 <strong class='reserved'>return</strong> 0;
<a id='L2049' name='L2049'></a>2049 
<a id='L2050' name='L2050'></a>2050             <a href='../Y/v.html' title='Multiple used in 86 places.'>v</a> = <a href='../S/lib--vfs--direntry.c.html#L1593' title='Defined at 1593 in lib/vfs/direntry.c.'>vfs_s_select_on_two</a> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L158' title='Defined at 158 in src/vfs/ftpfs/ftpfs.c.'>FH_SOCK</a>, 0);
<a id='L2051' name='L2051'></a>2051             <strong class='reserved'>return</strong> (((<a href='../Y/v.html' title='Multiple used in 86 places.'>v</a> &lt; 0) &amp;&amp; (<a href='../Y/errno.html' title='Multiple used in 247 places.'>errno</a> == <a href='../Y/EINTR.html' title='Multiple used in 45 places.'>EINTR</a>)) || <a href='../Y/v.html' title='Multiple used in 86 places.'>v</a> == 0) ? 1 : 0;
<a id='L2052' name='L2052'></a>2052         <em class='brace'>}</em>
<a id='L2053' name='L2053'></a>2053     <strong class='reserved'>default</strong>:
<a id='L2054' name='L2054'></a>2054         <strong class='reserved'>return</strong> 0;
<a id='L2055' name='L2055'></a>2055     <em class='brace'>}</em>
<a id='L2056' name='L2056'></a>2056 <em class='brace'>}</em>
<a id='L2057' name='L2057'></a>2057 
<a id='L2058' name='L2058'></a>2058 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2059' name='L2059'></a>2059 
<a id='L2060' name='L2060'></a>2060 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2061' name='L2061'></a>2061 <a href='../R/ftpfs_send_command.html' title='Multiple referred from 6 places.'>ftpfs_send_command</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/cmd.html' title='Multiple used in 101 places.'>cmd</a>, <strong class='reserved'>int</strong> <a href='../Y/flags.html' title='Multiple used in 420 places.'>flags</a>)
     <em class='comment'>/* <a href='#L2034'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2095'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2061 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2062' name='L2062'></a>2062 <em class='brace'>{</em>
<a id='L2063' name='L2063'></a>2063     <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/rpath.html' title='Multiple used in 39 places.'>rpath</a>;
<a id='L2064' name='L2064'></a>2064     <strong class='reserved'>char</strong> *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>;
<a id='L2065' name='L2065'></a>2065     <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>;
<a id='L2066' name='L2066'></a>2066     <strong class='reserved'>int</strong> <a href='../Y/r.html' title='Multiple used in 354 places.'>r</a>;
<a id='L2067' name='L2067'></a>2067     <strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L54' title='Defined at 54 in lib/vfs/path.h.'>vfs_path_element_t</a> *<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>;
<a id='L2068' name='L2068'></a>2068     <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/flush_directory_cache.html' title='Multiple used in 2 places.'>flush_directory_cache</a> = (<a href='../Y/flags.html' title='Multiple used in 420 places.'>flags</a> &amp; <a href='../D/OPT_FLUSH.html' title='Multiple defined in 2 places.'>OPT_FLUSH</a>) != 0;
<a id='L2069' name='L2069'></a>2069 
<a id='L2070' name='L2070'></a>2070     <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a> = <a href='../S/lib--vfs--path.c.html#L825' title='Defined at 825 in lib/vfs/path.c.'>vfs_path_get_by_index</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, -1);
<a id='L2071' name='L2071'></a>2071 
<a id='L2072' name='L2072'></a>2072     <a href='../Y/rpath.html' title='Multiple used in 39 places.'>rpath</a> = <a href='../S/lib--vfs--direntry.c.html#L1172' title='Defined at 1172 in lib/vfs/direntry.c.'>vfs_s_get_path</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, &amp;<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, 0);
<a id='L2073' name='L2073'></a>2073     <strong class='reserved'>if</strong> (<a href='../Y/rpath.html' title='Multiple used in 39 places.'>rpath</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2074' name='L2074'></a>2074         <strong class='reserved'>return</strong> (-1);
<a id='L2075' name='L2075'></a>2075 
<a id='L2076' name='L2076'></a>2076     <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L303' title='Defined at 303 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_translate_path</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/class.html' title='Multiple used in 159 places.'>class</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/rpath.html' title='Multiple used in 39 places.'>rpath</a>);
<a id='L2077' name='L2077'></a>2077     <a href='../Y/r.html' title='Multiple used in 354 places.'>r</a> = <a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/class.html' title='Multiple used in 159 places.'>class</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>, <a href='../Y/cmd.html' title='Multiple used in 101 places.'>cmd</a>, <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>);
<a id='L2078' name='L2078'></a>2078     <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>);
<a id='L2079' name='L2079'></a>2079     <a href='../S/lib--vfs--gc.c.html#L201' title='Defined at 201 in lib/vfs/gc.c.'>vfs_stamp_create</a> (<a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L2080' name='L2080'></a>2080     <strong class='reserved'>if</strong> ((<a href='../Y/flags.html' title='Multiple used in 420 places.'>flags</a> &amp; <a href='../D/OPT_IGNORE_ERROR.html' title='Multiple defined in 2 places.'>OPT_IGNORE_ERROR</a>) != 0)
<a id='L2081' name='L2081'></a>2081         <a href='../Y/r.html' title='Multiple used in 354 places.'>r</a> = <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>;
<a id='L2082' name='L2082'></a>2082     <strong class='reserved'>if</strong> (<a href='../Y/r.html' title='Multiple used in 354 places.'>r</a> != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L2083' name='L2083'></a>2083     <em class='brace'>{</em>
<a id='L2084' name='L2084'></a>2084         <a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/class.html' title='Multiple used in 159 places.'>class</a>-&gt;<a href='../Y/verrno.html' title='Multiple used in 36 places.'>verrno</a> = <a href='../Y/EPERM.html' title='Multiple used in 10 places.'>EPERM</a>;
<a id='L2085' name='L2085'></a>2085         <strong class='reserved'>return</strong> (-1);
<a id='L2086' name='L2086'></a>2086     <em class='brace'>}</em>
<a id='L2087' name='L2087'></a>2087     <strong class='reserved'>if</strong> (<a href='../Y/flush_directory_cache.html' title='Multiple used in 2 places.'>flush_directory_cache</a>)
<a id='L2088' name='L2088'></a>2088         <a href='../S/lib--vfs--direntry.c.html#L1232' title='Defined at 1232 in lib/vfs/direntry.c.'>vfs_s_invalidate</a> (<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>-&gt;<a href='../Y/class.html' title='Multiple used in 159 places.'>class</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L2089' name='L2089'></a>2089     <strong class='reserved'>return</strong> 0;
<a id='L2090' name='L2090'></a>2090 <em class='brace'>}</em>
<a id='L2091' name='L2091'></a>2091 
<a id='L2092' name='L2092'></a>2092 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2093' name='L2093'></a>2093 
<a id='L2094' name='L2094'></a>2094 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2095' name='L2095'></a>2095 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2705' title='Referred from 2705 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_stat</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> *<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>)
     <em class='comment'>/* <a href='#L2061'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2107'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2095 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2096' name='L2096'></a>2096 <em class='brace'>{</em>
<a id='L2097' name='L2097'></a>2097     <strong class='reserved'>int</strong> <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L2098' name='L2098'></a>2098 
<a id='L2099' name='L2099'></a>2099     <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a> = <a href='../S/lib--vfs--direntry.c.html#L1409' title='Defined at 1409 in lib/vfs/direntry.c.'>vfs_s_stat</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>);
<a id='L2100' name='L2100'></a>2100     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L278' title='Defined at 278 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_set_blksize</a> (<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>);
<a id='L2101' name='L2101'></a>2101     <strong class='reserved'>return</strong> <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L2102' name='L2102'></a>2102 <em class='brace'>}</em>
<a id='L2103' name='L2103'></a>2103 
<a id='L2104' name='L2104'></a>2104 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2105' name='L2105'></a>2105 
<a id='L2106' name='L2106'></a>2106 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2107' name='L2107'></a>2107 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2706' title='Referred from 2706 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_lstat</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> *<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>)
     <em class='comment'>/* <a href='#L2095'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2119'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2107 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2108' name='L2108'></a>2108 <em class='brace'>{</em>
<a id='L2109' name='L2109'></a>2109     <strong class='reserved'>int</strong> <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L2110' name='L2110'></a>2110 
<a id='L2111' name='L2111'></a>2111     <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a> = <a href='../S/lib--vfs--direntry.c.html#L1417' title='Defined at 1417 in lib/vfs/direntry.c.'>vfs_s_lstat</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>);
<a id='L2112' name='L2112'></a>2112     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L278' title='Defined at 278 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_set_blksize</a> (<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>);
<a id='L2113' name='L2113'></a>2113     <strong class='reserved'>return</strong> <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L2114' name='L2114'></a>2114 <em class='brace'>}</em>
<a id='L2115' name='L2115'></a>2115 
<a id='L2116' name='L2116'></a>2116 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2117' name='L2117'></a>2117 
<a id='L2118' name='L2118'></a>2118 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2119' name='L2119'></a>2119 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2707' title='Referred from 2707 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_fstat</a> (<strong class='reserved'>void</strong> *<a href='../Y/vfs_info.html' title='Multiple used in 24 places.'>vfs_info</a>, <strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> *<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>)
     <em class='comment'>/* <a href='#L2107'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2131'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2119 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2120' name='L2120'></a>2120 <em class='brace'>{</em>
<a id='L2121' name='L2121'></a>2121     <strong class='reserved'>int</strong> <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L2122' name='L2122'></a>2122 
<a id='L2123' name='L2123'></a>2123     <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a> = <a href='../S/lib--vfs--direntry.c.html#L1425' title='Defined at 1425 in lib/vfs/direntry.c.'>vfs_s_fstat</a> (<a href='../Y/vfs_info.html' title='Multiple used in 24 places.'>vfs_info</a>, <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>);
<a id='L2124' name='L2124'></a>2124     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L278' title='Defined at 278 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_set_blksize</a> (<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>);
<a id='L2125' name='L2125'></a>2125     <strong class='reserved'>return</strong> <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L2126' name='L2126'></a>2126 <em class='brace'>}</em>
<a id='L2127' name='L2127'></a>2127 
<a id='L2128' name='L2128'></a>2128 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2129' name='L2129'></a>2129 
<a id='L2130' name='L2130'></a>2130 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2131' name='L2131'></a>2131 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2708' title='Referred from 2708 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_chmod</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <a href='../Y/mode_t.html' title='Multiple used in 103 places.'>mode_t</a> <a href='../Y/mode.html' title='Multiple used in 239 places.'>mode</a>)
     <em class='comment'>/* <a href='#L2119'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2144'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2131 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2132' name='L2132'></a>2132 <em class='brace'>{</em>
<a id='L2133' name='L2133'></a>2133     <strong class='reserved'>char</strong> <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>[<a href='../S/lib--global.h.html#L114' title='Defined at 114 in lib/global.h.'>BUF_SMALL</a>];
<a id='L2134' name='L2134'></a>2134     <strong class='reserved'>int</strong> <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L2135' name='L2135'></a>2135 
<a id='L2136' name='L2136'></a>2136     <a href='../Y/g_snprintf.html' title='Multiple used in 106 places.'>g_snprintf</a> (<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>), "SITE CHMOD %4.4o /%%s", (<strong class='reserved'>unsigned</strong> <strong class='reserved'>int</strong>) (<a href='../Y/mode.html' title='Multiple used in 239 places.'>mode</a> &amp; 07777));
<a id='L2137' name='L2137'></a>2137     <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2061' title='Defined at 2061 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_send_command</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <a href='../Y/buf.html' title='Multiple used in 954 places.'>buf</a>, <a href='../D/OPT_FLUSH.html' title='Multiple defined in 2 places.'>OPT_FLUSH</a>);
<a id='L2138' name='L2138'></a>2138     <strong class='reserved'>return</strong> <a href='../Y/ftpfs_ignore_chattr_errors.html' title='Multiple used in 4 places.'>ftpfs_ignore_chattr_errors</a> ? 0 : <a href='../Y/ret.html' title='Multiple used in 1090 places.'>ret</a>;
<a id='L2139' name='L2139'></a>2139 <em class='brace'>}</em>
<a id='L2140' name='L2140'></a>2140 
<a id='L2141' name='L2141'></a>2141 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2142' name='L2142'></a>2142 
<a id='L2143' name='L2143'></a>2143 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2144' name='L2144'></a>2144 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2709' title='Referred from 2709 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_chown</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <a href='../Y/uid_t.html' title='Multiple used in 48 places.'>uid_t</a> <a href='../Y/owner.html' title='Multiple used in 127 places.'>owner</a>, <a href='../Y/gid_t.html' title='Multiple used in 47 places.'>gid_t</a> <a href='../Y/group.html' title='Multiple used in 153 places.'>group</a>)
     <em class='comment'>/* <a href='#L2131'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2166'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2144 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2145' name='L2145'></a>2145 <em class='brace'>{</em>
<a id='L2146' name='L2146'></a>2146 <em class='sharp'>#if</em> 0
<a id='L2147' name='L2147'></a>2147     (<strong class='reserved'>void</strong>) <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>;
<a id='L2148' name='L2148'></a>2148     (<strong class='reserved'>void</strong>) <a href='../Y/owner.html' title='Multiple used in 127 places.'>owner</a>;
<a id='L2149' name='L2149'></a>2149     (<strong class='reserved'>void</strong>) <a href='../Y/group.html' title='Multiple used in 153 places.'>group</a>;
<a id='L2150' name='L2150'></a>2150 
<a id='L2151' name='L2151'></a>2151     <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/EPERM.html' title='Multiple used in 10 places.'>EPERM</a>;
<a id='L2152' name='L2152'></a>2152     <strong class='reserved'>return</strong> (-1);
<a id='L2153' name='L2153'></a>2153 <em class='sharp'>#else</em>
<a id='L2154' name='L2154'></a>2154     <em class='comment'>/* Everyone knows it is not possible to chown remotely, so why bother them.</em>
<a id='L2155' name='L2155'></a>2155 <em class='comment'>       If someone's root, then copy/move will always try to chown it... */</em>
<a id='L2156' name='L2156'></a>2156     (<strong class='reserved'>void</strong>) <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>;
<a id='L2157' name='L2157'></a>2157     (<strong class='reserved'>void</strong>) <a href='../Y/owner.html' title='Multiple used in 127 places.'>owner</a>;
<a id='L2158' name='L2158'></a>2158     (<strong class='reserved'>void</strong>) <a href='../Y/group.html' title='Multiple used in 153 places.'>group</a>;
<a id='L2159' name='L2159'></a>2159     <strong class='reserved'>return</strong> 0;
<a id='L2160' name='L2160'></a>2160 <em class='sharp'>#endif</em>
<a id='L2161' name='L2161'></a>2161 <em class='brace'>}</em>
<a id='L2162' name='L2162'></a>2162 
<a id='L2163' name='L2163'></a>2163 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2164' name='L2164'></a>2164 
<a id='L2165' name='L2165'></a>2165 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2166' name='L2166'></a>2166 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2710' title='Referred from 2710 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_unlink</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>)
     <em class='comment'>/* <a href='#L2144'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2175'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2166 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2167' name='L2167'></a>2167 <em class='brace'>{</em>
<a id='L2168' name='L2168'></a>2168     <strong class='reserved'>return</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2061' title='Defined at 2061 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_send_command</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, "DELE /%s", <a href='../D/OPT_FLUSH.html' title='Multiple defined in 2 places.'>OPT_FLUSH</a>);
<a id='L2169' name='L2169'></a>2169 <em class='brace'>}</em>
<a id='L2170' name='L2170'></a>2170 
<a id='L2171' name='L2171'></a>2171 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2172' name='L2172'></a>2172 
<a id='L2173' name='L2173'></a>2173 <em class='comment'>/* Return TRUE if path is the same directory as the one we are in now */</em>
<a id='L2174' name='L2174'></a>2174 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a>
<a id='L2175' name='L2175'></a>2175 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2192' title='Referred from 2192 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_is_same_dir</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/path.html' title='Multiple used in 494 places.'>path</a>)
     <em class='comment'>/* <a href='#L2166'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2186'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2175 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2176' name='L2176'></a>2176 <em class='brace'>{</em>
<a id='L2177' name='L2177'></a>2177     (<strong class='reserved'>void</strong>) <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>;
<a id='L2178' name='L2178'></a>2178 
<a id='L2179' name='L2179'></a>2179     <strong class='reserved'>return</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>
<a id='L2180' name='L2180'></a>2180             &amp;&amp; <a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (<a href='../Y/path.html' title='Multiple used in 494 places.'>path</a>, <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>)-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a>) == 0);
<a id='L2181' name='L2181'></a>2181 <em class='brace'>}</em>
<a id='L2182' name='L2182'></a>2182 
<a id='L2183' name='L2183'></a>2183 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2184' name='L2184'></a>2184 
<a id='L2185' name='L2185'></a>2185 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2186' name='L2186'></a>2186 <a href='../R/ftpfs_chdir_internal.html' title='Multiple referred from 4 places.'>ftpfs_chdir_internal</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>)
     <em class='comment'>/* <a href='#L2175'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2213'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2186 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2187' name='L2187'></a>2187 <em class='brace'>{</em>
<a id='L2188' name='L2188'></a>2188     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>);
<a id='L2189' name='L2189'></a>2189     <strong class='reserved'>int</strong> <a href='../Y/r.html' title='Multiple used in 354 places.'>r</a>;
<a id='L2190' name='L2190'></a>2190     <strong class='reserved'>char</strong> *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>;
<a id='L2191' name='L2191'></a>2191 
<a id='L2192' name='L2192'></a>2192     <strong class='reserved'>if</strong> (!<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/cwd_deferred.html' title='Multiple used in 3 places.'>cwd_deferred</a> &amp;&amp; <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2175' title='Defined at 2175 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_is_same_dir</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>))
<a id='L2193' name='L2193'></a>2193         <strong class='reserved'>return</strong> <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>;
<a id='L2194' name='L2194'></a>2194 
<a id='L2195' name='L2195'></a>2195     <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L303' title='Defined at 303 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_translate_path</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>);
<a id='L2196' name='L2196'></a>2196     <a href='../Y/r.html' title='Multiple used in 354 places.'>r</a> = <a href='../Y/ftpfs_command.html' title='Multiple used in 17 places.'>ftpfs_command</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>, <a href='../D/WAIT_REPLY.html' title='Multiple defined in 2 places.'>WAIT_REPLY</a>, "CWD /%s", <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>);
<a id='L2197' name='L2197'></a>2197     <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>);
<a id='L2198' name='L2198'></a>2198 
<a id='L2199' name='L2199'></a>2199     <strong class='reserved'>if</strong> (<a href='../Y/r.html' title='Multiple used in 354 places.'>r</a> != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L2200' name='L2200'></a>2200         <a href='../Y/ftpfs_errno.html' title='Multiple used in 14 places.'>ftpfs_errno</a> = <a href='../Y/EIO.html' title='Multiple used in 28 places.'>EIO</a>;
<a id='L2201' name='L2201'></a>2201     <strong class='reserved'>else</strong>
<a id='L2202' name='L2202'></a>2202     <em class='brace'>{</em>
<a id='L2203' name='L2203'></a>2203         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a>);
<a id='L2204' name='L2204'></a>2204         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/current_dir.html' title='Multiple used in 35 places.'>current_dir</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/remote_path.html' title='Multiple used in 40 places.'>remote_path</a>);
<a id='L2205' name='L2205'></a>2205         <a href='../Y/ftp_super.html' title='Multiple used in 75 places.'>ftp_super</a>-&gt;<a href='../Y/cwd_deferred.html' title='Multiple used in 3 places.'>cwd_deferred</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L2206' name='L2206'></a>2206     <em class='brace'>}</em>
<a id='L2207' name='L2207'></a>2207     <strong class='reserved'>return</strong> <a href='../Y/r.html' title='Multiple used in 354 places.'>r</a>;
<a id='L2208' name='L2208'></a>2208 <em class='brace'>}</em>
<a id='L2209' name='L2209'></a>2209 
<a id='L2210' name='L2210'></a>2210 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2211' name='L2211'></a>2211 
<a id='L2212' name='L2212'></a>2212 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2213' name='L2213'></a>2213 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2711' title='Referred from 2711 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_rename</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath1.html' title='Multiple used in 76 places.'>vpath1</a>, <strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath2.html' title='Multiple used in 72 places.'>vpath2</a>)
     <em class='comment'>/* <a href='#L2186'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2222'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2213 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2214' name='L2214'></a>2214 <em class='brace'>{</em>
<a id='L2215' name='L2215'></a>2215     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2061' title='Defined at 2061 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_send_command</a> (<a href='../Y/vpath1.html' title='Multiple used in 76 places.'>vpath1</a>, "RNFR /%s", <a href='../D/OPT_FLUSH.html' title='Multiple defined in 2 places.'>OPT_FLUSH</a>);
<a id='L2216' name='L2216'></a>2216     <strong class='reserved'>return</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2061' title='Defined at 2061 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_send_command</a> (<a href='../Y/vpath2.html' title='Multiple used in 72 places.'>vpath2</a>, "RNTO /%s", <a href='../D/OPT_FLUSH.html' title='Multiple defined in 2 places.'>OPT_FLUSH</a>);
<a id='L2217' name='L2217'></a>2217 <em class='brace'>}</em>
<a id='L2218' name='L2218'></a>2218 
<a id='L2219' name='L2219'></a>2219 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2220' name='L2220'></a>2220 
<a id='L2221' name='L2221'></a>2221 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2222' name='L2222'></a>2222 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2712' title='Referred from 2712 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_mkdir</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <a href='../Y/mode_t.html' title='Multiple used in 103 places.'>mode_t</a> <a href='../Y/mode.html' title='Multiple used in 239 places.'>mode</a>)
     <em class='comment'>/* <a href='#L2213'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2232'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2222 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2223' name='L2223'></a>2223 <em class='brace'>{</em>
<a id='L2224' name='L2224'></a>2224     (<strong class='reserved'>void</strong>) <a href='../Y/mode.html' title='Multiple used in 239 places.'>mode</a>;                <em class='comment'>/* FIXME: should be used */</em>
<a id='L2225' name='L2225'></a>2225 
<a id='L2226' name='L2226'></a>2226     <strong class='reserved'>return</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2061' title='Defined at 2061 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_send_command</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, "MKD /%s", <a href='../D/OPT_FLUSH.html' title='Multiple defined in 2 places.'>OPT_FLUSH</a>);
<a id='L2227' name='L2227'></a>2227 <em class='brace'>}</em>
<a id='L2228' name='L2228'></a>2228 
<a id='L2229' name='L2229'></a>2229 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2230' name='L2230'></a>2230 
<a id='L2231' name='L2231'></a>2231 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2232' name='L2232'></a>2232 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2713' title='Referred from 2713 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_rmdir</a> (<strong class='reserved'>const</strong> <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> * <a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>)
     <em class='comment'>/* <a href='#L2222'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2240'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2232 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2233' name='L2233'></a>2233 <em class='brace'>{</em>
<a id='L2234' name='L2234'></a>2234     <strong class='reserved'>return</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2061' title='Defined at 2061 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_send_command</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, "RMD /%s", <a href='../D/OPT_FLUSH.html' title='Multiple defined in 2 places.'>OPT_FLUSH</a>);
<a id='L2235' name='L2235'></a>2235 <em class='brace'>}</em>
<a id='L2236' name='L2236'></a>2236 
<a id='L2237' name='L2237'></a>2237 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2238' name='L2238'></a>2238 
<a id='L2239' name='L2239'></a>2239 <strong class='reserved'>static</strong> <a href='../S/lib--vfs--xdirentry.h.html#L106' title='Defined at 106 in lib/vfs/xdirentry.h.'>vfs_file_handler_t</a> *
<a id='L2240' name='L2240'></a>2240 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2719' title='Referred from 2719 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_fh_new</a> (<strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L84' title='Defined at 84 in lib/vfs/xdirentry.h.'>vfs_s_inode</a> *<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>, <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/changed.html' title='Multiple used in 32 places.'>changed</a>)
     <em class='comment'>/* <a href='#L2232'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2254'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2240 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2241' name='L2241'></a>2241 <em class='brace'>{</em>
<a id='L2242' name='L2242'></a>2242     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L232' title='Defined at 232 in src/vfs/ftpfs/ftpfs.c.'>ftp_file_handler_t</a> *<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>;
<a id='L2243' name='L2243'></a>2243 
<a id='L2244' name='L2244'></a>2244     <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a> = <a href='../Y/g_new0.html' title='Multiple used in 80 places.'>g_new0</a> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L232' title='Defined at 232 in src/vfs/ftpfs/ftpfs.c.'>ftp_file_handler_t</a>, 1);
<a id='L2245' name='L2245'></a>2245     <a href='../S/lib--vfs--direntry.c.html#L1281' title='Defined at 1281 in lib/vfs/direntry.c.'>vfs_s_init_fh</a> (<a href='../S/lib--vfs--xdirentry.h.html#L43' title='Defined at 43 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>), <a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>, <a href='../Y/changed.html' title='Multiple used in 32 places.'>changed</a>);
<a id='L2246' name='L2246'></a>2246     <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a> = -1;
<a id='L2247' name='L2247'></a>2247 
<a id='L2248' name='L2248'></a>2248     <strong class='reserved'>return</strong> <a href='../S/lib--vfs--xdirentry.h.html#L43' title='Defined at 43 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>);
<a id='L2249' name='L2249'></a>2249 <em class='brace'>}</em>
<a id='L2250' name='L2250'></a>2250 
<a id='L2251' name='L2251'></a>2251 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2252' name='L2252'></a>2252 
<a id='L2253' name='L2253'></a>2253 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2254' name='L2254'></a>2254 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2720' title='Referred from 2720 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_fh_open</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/lib--vfs--xdirentry.h.html#L106' title='Defined at 106 in lib/vfs/xdirentry.h.'>vfs_file_handler_t</a> * <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>, <strong class='reserved'>int</strong> <a href='../Y/flags.html' title='Multiple used in 420 places.'>flags</a>, <a href='../Y/mode_t.html' title='Multiple used in 103 places.'>mode_t</a> <a href='../Y/mode.html' title='Multiple used in 239 places.'>mode</a>)
     <em class='comment'>/* <a href='#L2240'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2332'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2254 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2255' name='L2255'></a>2255 <em class='brace'>{</em>
<a id='L2256' name='L2256'></a>2256     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L232' title='Defined at 232 in src/vfs/ftpfs/ftpfs.c.'>ftp_file_handler_t</a> *<a href='../Y/ftp.html' title='Multiple used in 7 places.'>ftp</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L157' title='Defined at 157 in src/vfs/ftpfs/ftpfs.c.'>FTP_FILE_HANDLER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>);
<a id='L2257' name='L2257'></a>2257 
<a id='L2258' name='L2258'></a>2258     (<strong class='reserved'>void</strong>) <a href='../Y/mode.html' title='Multiple used in 239 places.'>mode</a>;
<a id='L2259' name='L2259'></a>2259 
<a id='L2260' name='L2260'></a>2260     <em class='comment'>/* File will be written only, so no need to retrieve it from ftp server */</em>
<a id='L2261' name='L2261'></a>2261     <strong class='reserved'>if</strong> (((<a href='../Y/flags.html' title='Multiple used in 420 places.'>flags</a> &amp; <a href='../Y/O_WRONLY.html' title='Multiple used in 22 places.'>O_WRONLY</a>) == <a href='../Y/O_WRONLY.html' title='Multiple used in 22 places.'>O_WRONLY</a>) &amp;&amp; ((<a href='../Y/flags.html' title='Multiple used in 420 places.'>flags</a> &amp; (<a href='../Y/O_RDONLY.html' title='Multiple used in 44 places.'>O_RDONLY</a> | <a href='../Y/O_RDWR.html' title='Multiple used in 17 places.'>O_RDWR</a>)) == 0))
<a id='L2262' name='L2262'></a>2262     <em class='brace'>{</em>
<a id='L2263' name='L2263'></a>2263 <em class='sharp'>#ifdef</em> <a href='../Y/HAVE_STRUCT_LINGER_L_LINGER.html' title='Multiple used in 4 places.'>HAVE_STRUCT_LINGER_L_LINGER</a>
<a id='L2264' name='L2264'></a>2264         <strong class='reserved'>struct</strong> <a href='../Y/linger.html' title='Multiple used in 2 places.'>linger</a> <a href='../Y/li.html' title='Multiple used in 21 places.'>li</a>;
<a id='L2265' name='L2265'></a>2265 <em class='sharp'>#else</em>
<a id='L2266' name='L2266'></a>2266         <strong class='reserved'>int</strong> <a href='../Y/li.html' title='Multiple used in 21 places.'>li</a> = 1;
<a id='L2267' name='L2267'></a>2267 <em class='sharp'>#endif</em>
<a id='L2268' name='L2268'></a>2268         <strong class='reserved'>char</strong> *<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>;
<a id='L2269' name='L2269'></a>2269 
<a id='L2270' name='L2270'></a>2270         <em class='comment'>/* ftpfs_linear_start() called, so data will be written</em>
<a id='L2271' name='L2271'></a>2271 <em class='comment'>         * to local temporary file and stored to ftp server</em>
<a id='L2272' name='L2272'></a>2272 <em class='comment'>         * by vfs_s_close later</em>
<a id='L2273' name='L2273'></a>2273 <em class='comment'>         */</em>
<a id='L2274' name='L2274'></a>2274         <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../S/lib--vfs--xdirentry.h.html#L44' title='Defined at 44 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER_SUPER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>))-&gt;<a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a>)
<a id='L2275' name='L2275'></a>2275         <em class='brace'>{</em>
<a id='L2276' name='L2276'></a>2276             <strong class='reserved'>if</strong> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/localname.html' title='Multiple used in 43 places.'>localname</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2277' name='L2277'></a>2277             <em class='brace'>{</em>
<a id='L2278' name='L2278'></a>2278                 <a href='../S/lib--vfs--path.h.html#L31' title='Defined at 31 in lib/vfs/path.h.'>vfs_path_t</a> *<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>;
<a id='L2279' name='L2279'></a>2279                 <strong class='reserved'>int</strong> <a href='../Y/handle.html' title='Multiple used in 152 places.'>handle</a>;
<a id='L2280' name='L2280'></a>2280 
<a id='L2281' name='L2281'></a>2281                 <a href='../Y/handle.html' title='Multiple used in 152 places.'>handle</a> = <a href='../S/lib--vfs--utilvfs.c.html#L177' title='Defined at 177 in lib/vfs/utilvfs.c.'>vfs_mkstemps</a> (&amp;<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>, <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>-&gt;<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>, <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/ent.html' title='Multiple used in 105 places.'>ent</a>-&gt;<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>);
<a id='L2282' name='L2282'></a>2282                 <strong class='reserved'>if</strong> (<a href='../Y/handle.html' title='Multiple used in 152 places.'>handle</a> == -1)
<a id='L2283' name='L2283'></a>2283                 <em class='brace'>{</em>
<a id='L2284' name='L2284'></a>2284                     <a href='../S/lib--vfs--path.c.html#L946' title='Defined at 946 in lib/vfs/path.c.'>vfs_path_free</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>);
<a id='L2285' name='L2285'></a>2285                     <strong class='reserved'>return</strong> (-1);
<a id='L2286' name='L2286'></a>2286                 <em class='brace'>}</em>
<a id='L2287' name='L2287'></a>2287                 <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/handle.html' title='Multiple used in 152 places.'>handle</a>);
<a id='L2288' name='L2288'></a>2288                 <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/localname.html' title='Multiple used in 43 places.'>localname</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../S/lib--vfs--path.h.html#L142' title='Defined at 142 in lib/vfs/path.h.'>vfs_path_as_str</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>));
<a id='L2289' name='L2289'></a>2289                 <a href='../S/lib--vfs--path.c.html#L946' title='Defined at 946 in lib/vfs/path.c.'>vfs_path_free</a> (<a href='../Y/vpath.html' title='Multiple used in 999 places.'>vpath</a>);
<a id='L2290' name='L2290'></a>2290                 <a href='../Y/ftp.html' title='Multiple used in 7 places.'>ftp</a>-&gt;<a href='../Y/append.html' title='Multiple used in 8 places.'>append</a> = (<a href='../Y/flags.html' title='Multiple used in 420 places.'>flags</a> &amp; <a href='../Y/O_APPEND.html' title='Multiple used in 9 places.'>O_APPEND</a>) != 0;
<a id='L2291' name='L2291'></a>2291             <em class='brace'>}</em>
<a id='L2292' name='L2292'></a>2292             <strong class='reserved'>return</strong> 0;
<a id='L2293' name='L2293'></a>2293         <em class='brace'>}</em>
<a id='L2294' name='L2294'></a>2294         <a href='../Y/name.html' title='Multiple used in 736 places.'>name</a> = <a href='../S/lib--vfs--direntry.c.html#L1244' title='Defined at 1244 in lib/vfs/direntry.c.'>vfs_s_fullpath</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>);
<a id='L2295' name='L2295'></a>2295         <strong class='reserved'>if</strong> (<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2296' name='L2296'></a>2296             <strong class='reserved'>return</strong> (-1);
<a id='L2297' name='L2297'></a>2297 
<a id='L2298' name='L2298'></a>2298         <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/handle.html' title='Multiple used in 152 places.'>handle</a> =
<a id='L2299' name='L2299'></a>2299             <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1384' title='Defined at 1384 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_data_connection</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/lib--vfs--xdirentry.h.html#L44' title='Defined at 44 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER_SUPER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>),
<a id='L2300' name='L2300'></a>2300                                         (<a href='../Y/flags.html' title='Multiple used in 420 places.'>flags</a> &amp; <a href='../Y/O_APPEND.html' title='Multiple used in 9 places.'>O_APPEND</a>) != 0 ? "APPE" : "STOR", <a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>,
<a id='L2301' name='L2301'></a>2301                                         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L178' title='Defined at 178 in src/vfs/ftpfs/ftpfs.c.'>TYPE_BINARY</a>, 0);
<a id='L2302' name='L2302'></a>2302         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>);
<a id='L2303' name='L2303'></a>2303 
<a id='L2304' name='L2304'></a>2304         <strong class='reserved'>if</strong> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/handle.html' title='Multiple used in 152 places.'>handle</a> &lt; 0)
<a id='L2305' name='L2305'></a>2305             <strong class='reserved'>return</strong> (-1);
<a id='L2306' name='L2306'></a>2306 
<a id='L2307' name='L2307'></a>2307 <em class='sharp'>#ifdef</em> <a href='../Y/HAVE_STRUCT_LINGER_L_LINGER.html' title='Multiple used in 4 places.'>HAVE_STRUCT_LINGER_L_LINGER</a>
<a id='L2308' name='L2308'></a>2308         <a href='../Y/li.html' title='Multiple used in 21 places.'>li</a>.<a href='../Y/l_onoff.html' title='Multiple used in 2 places.'>l_onoff</a> = 1;
<a id='L2309' name='L2309'></a>2309         <a href='../Y/li.html' title='Multiple used in 21 places.'>li</a>.<a href='../Y/l_linger.html' title='Multiple used in 2 places.'>l_linger</a> = 120;
<a id='L2310' name='L2310'></a>2310 <em class='sharp'>#endif</em>
<a id='L2311' name='L2311'></a>2311         <a href='../Y/setsockopt.html' title='Multiple used in 6 places.'>setsockopt</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/handle.html' title='Multiple used in 152 places.'>handle</a>, <a href='../Y/SOL_SOCKET.html' title='Multiple used in 14 places.'>SOL_SOCKET</a>, <a href='../Y/SO_LINGER.html' title='Multiple used in 3 places.'>SO_LINGER</a>, &amp;<a href='../Y/li.html' title='Multiple used in 21 places.'>li</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/li.html' title='Multiple used in 21 places.'>li</a>));
<a id='L2312' name='L2312'></a>2312 
<a id='L2313' name='L2313'></a>2313         <strong class='reserved'>if</strong> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/localname.html' title='Multiple used in 43 places.'>localname</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2314' name='L2314'></a>2314         <em class='brace'>{</em>
<a id='L2315' name='L2315'></a>2315             <a href='../Y/unlink.html' title='Multiple used in 25 places.'>unlink</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/localname.html' title='Multiple used in 43 places.'>localname</a>);
<a id='L2316' name='L2316'></a>2316             <a href='../S/lib--util.h.html#L25' title='Defined at 25 in lib/util.h.'>MC_PTR_FREE</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/localname.html' title='Multiple used in 43 places.'>localname</a>);
<a id='L2317' name='L2317'></a>2317         <em class='brace'>}</em>
<a id='L2318' name='L2318'></a>2318         <strong class='reserved'>return</strong> 0;
<a id='L2319' name='L2319'></a>2319     <em class='brace'>}</em>
<a id='L2320' name='L2320'></a>2320 
<a id='L2321' name='L2321'></a>2321     <strong class='reserved'>if</strong> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/localname.html' title='Multiple used in 43 places.'>localname</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a> &amp;&amp; <a href='../S/lib--vfs--direntry.c.html#L1434' title='Defined at 1434 in lib/vfs/direntry.c.'>vfs_s_retrieve_file</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>) == -1)
<a id='L2322' name='L2322'></a>2322         <strong class='reserved'>return</strong> (-1);
<a id='L2323' name='L2323'></a>2323 
<a id='L2324' name='L2324'></a>2324     <strong class='reserved'>if</strong> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/localname.html' title='Multiple used in 43 places.'>localname</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2325' name='L2325'></a>2325         <a href='../D/vfs_die.html' title='Multiple defined in 2 places.'>vfs_die</a> ("retrieve_file failed to fill in localname");
<a id='L2326' name='L2326'></a>2326     <strong class='reserved'>return</strong> 0;
<a id='L2327' name='L2327'></a>2327 <em class='brace'>}</em>
<a id='L2328' name='L2328'></a>2328 
<a id='L2329' name='L2329'></a>2329 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2330' name='L2330'></a>2330 
<a id='L2331' name='L2331'></a>2331 <strong class='reserved'>static</strong> <strong class='reserved'>int</strong>
<a id='L2332' name='L2332'></a>2332 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2721' title='Referred from 2721 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_fh_close</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/lib--vfs--xdirentry.h.html#L106' title='Defined at 106 in lib/vfs/xdirentry.h.'>vfs_file_handler_t</a> * <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>)
     <em class='comment'>/* <a href='#L2254'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2356'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2332 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2333' name='L2333'></a>2333 <em class='brace'>{</em>
<a id='L2334' name='L2334'></a>2334     <strong class='reserved'>if</strong> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/handle.html' title='Multiple used in 152 places.'>handle</a> != -1 &amp;&amp; <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/ino.html' title='Multiple used in 266 places.'>ino</a>-&gt;<a href='../Y/localname.html' title='Multiple used in 43 places.'>localname</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2335' name='L2335'></a>2335     <em class='brace'>{</em>
<a id='L2336' name='L2336'></a>2336         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L224' title='Defined at 224 in src/vfs/ftpfs/ftpfs.c.'>ftp_super_t</a> *<a href='../Y/ftp.html' title='Multiple used in 7 places.'>ftp</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L156' title='Defined at 156 in src/vfs/ftpfs/ftpfs.c.'>FTP_SUPER</a> (<a href='../S/lib--vfs--xdirentry.h.html#L44' title='Defined at 44 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER_SUPER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>));
<a id='L2337' name='L2337'></a>2337 
<a id='L2338' name='L2338'></a>2338         <a href='../Y/close.html' title='Multiple used in 154 places.'>close</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/handle.html' title='Multiple used in 152 places.'>handle</a>);
<a id='L2339' name='L2339'></a>2339         <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/handle.html' title='Multiple used in 152 places.'>handle</a> = -1;
<a id='L2340' name='L2340'></a>2340         <a href='../Y/ftp.html' title='Multiple used in 7 places.'>ftp</a>-&gt;<a href='../Y/ctl_connection_busy.html' title='Multiple used in 11 places.'>ctl_connection_busy</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L2341' name='L2341'></a>2341         <em class='comment'>/* File is stored to destination already, so</em>
<a id='L2342' name='L2342'></a>2342 <em class='comment'>         * we prevent VFS_SUBCLASS (me)-&gt;ftpfs_file_store() call from vfs_s_close ()</em>
<a id='L2343' name='L2343'></a>2343 <em class='comment'>         */</em>
<a id='L2344' name='L2344'></a>2344         <a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>-&gt;<a href='../Y/changed.html' title='Multiple used in 32 places.'>changed</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L2345' name='L2345'></a>2345         <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L391' title='Defined at 391 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_get_reply</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/ftp.html' title='Multiple used in 7 places.'>ftp</a>-&gt;<a href='../Y/sock.html' title='Multiple used in 94 places.'>sock</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, 0) != <a href='../S/src--vfs--fish--fish.c.html#L100' title='Defined at 100 in src/vfs/fish/fish.c.'>COMPLETE</a>)
<a id='L2346' name='L2346'></a>2346             <a href='../D/ERRNOR.html' title='Multiple defined in 3 places.'>ERRNOR</a> (<a href='../Y/EIO.html' title='Multiple used in 28 places.'>EIO</a>, -1);
<a id='L2347' name='L2347'></a>2347         <a href='../S/lib--vfs--direntry.c.html#L1232' title='Defined at 1232 in lib/vfs/direntry.c.'>vfs_s_invalidate</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../S/lib--vfs--xdirentry.h.html#L44' title='Defined at 44 in lib/vfs/xdirentry.h.'>VFS_FILE_HANDLER_SUPER</a> (<a href='../Y/fh.html' title='Multiple used in 250 places.'>fh</a>));
<a id='L2348' name='L2348'></a>2348     <em class='brace'>}</em>
<a id='L2349' name='L2349'></a>2349 
<a id='L2350' name='L2350'></a>2350     <strong class='reserved'>return</strong> 0;
<a id='L2351' name='L2351'></a>2351 <em class='brace'>}</em>
<a id='L2352' name='L2352'></a>2352 
<a id='L2353' name='L2353'></a>2353 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2354' name='L2354'></a>2354 
<a id='L2355' name='L2355'></a>2355 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L2356' name='L2356'></a>2356 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2703' title='Referred from 2703 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_done</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>)
     <em class='comment'>/* <a href='#L2332'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2369'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2356 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2357' name='L2357'></a>2357 <em class='brace'>{</em>
<a id='L2358' name='L2358'></a>2358     (<strong class='reserved'>void</strong>) <a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>;
<a id='L2359' name='L2359'></a>2359 
<a id='L2360' name='L2360'></a>2360     <a href='../Y/g_slist_free_full.html' title='Multiple used in 10 places.'>g_slist_free_full</a> (<a href='../Y/no_proxy.html' title='Multiple used in 4 places.'>no_proxy</a>, <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a>);
<a id='L2361' name='L2361'></a>2361 
<a id='L2362' name='L2362'></a>2362     <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/ftpfs_anonymous_passwd.html' title='Multiple used in 12 places.'>ftpfs_anonymous_passwd</a>);
<a id='L2363' name='L2363'></a>2363     <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/ftpfs_proxy_host.html' title='Multiple used in 12 places.'>ftpfs_proxy_host</a>);
<a id='L2364' name='L2364'></a>2364 <em class='brace'>}</em>
<a id='L2365' name='L2365'></a>2365 
<a id='L2366' name='L2366'></a>2366 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2367' name='L2367'></a>2367 
<a id='L2368' name='L2368'></a>2368 <strong class='reserved'>static</strong> <strong class='reserved'>void</strong>
<a id='L2369' name='L2369'></a>2369 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2704' title='Referred from 2704 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_fill_names</a> (<strong class='reserved'>struct</strong> <a href='../D/vfs_class.html' title='Multiple defined in 2 places.'>vfs_class</a> *<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>, <a href='../Y/fill_names_f.html' title='Multiple used in 12 places.'>fill_names_f</a> <a href='../Y/func.html' title='Multiple used in 47 places.'>func</a>)
     <em class='comment'>/* <a href='#L2356'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2388'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2369 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2370' name='L2370'></a>2370 <em class='brace'>{</em>
<a id='L2371' name='L2371'></a>2371     <a href='../Y/GList.html' title='Multiple used in 176 places.'>GList</a> *<a href='../Y/iter.html' title='Multiple used in 37 places.'>iter</a>;
<a id='L2372' name='L2372'></a>2372 
<a id='L2373' name='L2373'></a>2373     <strong class='reserved'>for</strong> (<a href='../Y/iter.html' title='Multiple used in 37 places.'>iter</a> = <a href='../S/lib--vfs--xdirentry.h.html#L37' title='Defined at 37 in lib/vfs/xdirentry.h.'>VFS_SUBCLASS</a> (<a href='../Y/me.html' title='Multiple used in 614 places.'>me</a>)-&gt;<a href='../Y/supers.html' title='Multiple used in 13 places.'>supers</a>; <a href='../Y/iter.html' title='Multiple used in 37 places.'>iter</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>; <a href='../Y/iter.html' title='Multiple used in 37 places.'>iter</a> = <a href='../Y/g_list_next.html' title='Multiple used in 51 places.'>g_list_next</a> (<a href='../Y/iter.html' title='Multiple used in 37 places.'>iter</a>))
<a id='L2374' name='L2374'></a>2374     <em class='brace'>{</em>
<a id='L2375' name='L2375'></a>2375         <strong class='reserved'>const</strong> <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a> = (<strong class='reserved'>const</strong> <strong class='reserved'>struct</strong> <a href='../S/lib--vfs--xdirentry.h.html#L59' title='Defined at 59 in lib/vfs/xdirentry.h.'>vfs_s_super</a> *) <a href='../Y/iter.html' title='Multiple used in 37 places.'>iter</a>-&gt;<a href='../Y/data.html' title='Multiple used in 912 places.'>data</a>;
<a id='L2376' name='L2376'></a>2376         <strong class='reserved'>char</strong> *<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>;
<a id='L2377' name='L2377'></a>2377 
<a id='L2378' name='L2378'></a>2378         <a href='../Y/name.html' title='Multiple used in 736 places.'>name</a> = <a href='../S/lib--vfs--path.c.html#L1528' title='Defined at 1528 in lib/vfs/path.c.'>vfs_path_element_build_pretty_path_str</a> (<a href='../Y/super.html' title='Multiple used in 607 places.'>super</a>-&gt;<a href='../Y/path_element.html' title='Multiple used in 571 places.'>path_element</a>);
<a id='L2379' name='L2379'></a>2379 
<a id='L2380' name='L2380'></a>2380         <a href='../Y/func.html' title='Multiple used in 47 places.'>func</a> (<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>);
<a id='L2381' name='L2381'></a>2381         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/name.html' title='Multiple used in 736 places.'>name</a>);
<a id='L2382' name='L2382'></a>2382     <em class='brace'>}</em>
<a id='L2383' name='L2383'></a>2383 <em class='brace'>}</em>
<a id='L2384' name='L2384'></a>2384 
<a id='L2385' name='L2385'></a>2385 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2386' name='L2386'></a>2386 
<a id='L2387' name='L2387'></a>2387 <strong class='reserved'>static</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L203' title='Defined at 203 in src/vfs/ftpfs/ftpfs.c.'>keyword_t</a>
<a id='L2388' name='L2388'></a>2388 <a href='../R/ftpfs_netrc_next.html' title='Multiple referred from 6 places.'>ftpfs_netrc_next</a> (<strong class='reserved'>void</strong>)
     <em class='comment'>/* <a href='#L2369'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2440'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2388 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2389' name='L2389'></a>2389 <em class='brace'>{</em>
<a id='L2390' name='L2390'></a>2390     <strong class='reserved'>char</strong> *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>;
<a id='L2391' name='L2391'></a>2391     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L203' title='Defined at 203 in src/vfs/ftpfs/ftpfs.c.'>keyword_t</a> <a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a>;
<a id='L2392' name='L2392'></a>2392     <strong class='reserved'>static</strong> <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<strong class='reserved'>const</strong> <a href='../Y/keywords.html' title='Multiple used in 3 places.'>keywords</a>[] = <em class='brace'>{</em> "default", "machine",
<a id='L2393' name='L2393'></a>2393         "login", "password", "passwd", "account", "macdef", <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>
<a id='L2394' name='L2394'></a>2394     <em class='brace'>}</em>;
<a id='L2395' name='L2395'></a>2395 
<a id='L2396' name='L2396'></a>2396     <strong class='reserved'>while</strong> (<a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>)
<a id='L2397' name='L2397'></a>2397     <em class='brace'>{</em>
<a id='L2398' name='L2398'></a>2398         <a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> = <a href='../S/lib--util.c.html#L699' title='Defined at 699 in lib/util.c.'>skip_separators</a> (<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>);
<a id='L2399' name='L2399'></a>2399         <strong class='reserved'>if</strong> (*<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> != '\n')
<a id='L2400' name='L2400'></a>2400             <strong class='reserved'>break</strong>;
<a id='L2401' name='L2401'></a>2401         <a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>++;
<a id='L2402' name='L2402'></a>2402     <em class='brace'>}</em>
<a id='L2403' name='L2403'></a>2403     <strong class='reserved'>if</strong> (*<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> == '\0')
<a id='L2404' name='L2404'></a>2404         <strong class='reserved'>return</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L194' title='Defined at 194 in src/vfs/ftpfs/ftpfs.c.'>NETRC_NONE</a>;
<a id='L2405' name='L2405'></a>2405 
<a id='L2406' name='L2406'></a>2406     <a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = <a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>;
<a id='L2407' name='L2407'></a>2407     <strong class='reserved'>if</strong> (*<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> == '"')
<a id='L2408' name='L2408'></a>2408     <em class='brace'>{</em>
<a id='L2409' name='L2409'></a>2409         <strong class='reserved'>for</strong> (<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>++; *<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> != '"' &amp;&amp; *<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> != '\0'; <a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>++)
<a id='L2410' name='L2410'></a>2410         <em class='brace'>{</em>
<a id='L2411' name='L2411'></a>2411             <strong class='reserved'>if</strong> (*<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> == '\\')
<a id='L2412' name='L2412'></a>2412                 <a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>++;
<a id='L2413' name='L2413'></a>2413             *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>++ = *<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>;
<a id='L2414' name='L2414'></a>2414         <em class='brace'>}</em>
<a id='L2415' name='L2415'></a>2415     <em class='brace'>}</em>
<a id='L2416' name='L2416'></a>2416     <strong class='reserved'>else</strong>
<a id='L2417' name='L2417'></a>2417     <em class='brace'>{</em>
<a id='L2418' name='L2418'></a>2418         <strong class='reserved'>for</strong> (; *<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> != '\0' &amp;&amp; !<a href='../S/lib--util.h.html#L31' title='Defined at 31 in lib/util.h.'>whiteness</a> (*<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>) &amp;&amp; *<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> != ','; <a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>++)
<a id='L2419' name='L2419'></a>2419         <em class='brace'>{</em>
<a id='L2420' name='L2420'></a>2420             <strong class='reserved'>if</strong> (*<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> == '\\')
<a id='L2421' name='L2421'></a>2421                 <a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>++;
<a id='L2422' name='L2422'></a>2422             *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a>++ = *<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>;
<a id='L2423' name='L2423'></a>2423         <em class='brace'>}</em>
<a id='L2424' name='L2424'></a>2424     <em class='brace'>}</em>
<a id='L2425' name='L2425'></a>2425 
<a id='L2426' name='L2426'></a>2426     *<a href='../Y/p.html' title='Multiple used in 2263 places.'>p</a> = '\0';
<a id='L2427' name='L2427'></a>2427     <strong class='reserved'>if</strong> (*<a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a> == '\0')
<a id='L2428' name='L2428'></a>2428         <strong class='reserved'>return</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L194' title='Defined at 194 in src/vfs/ftpfs/ftpfs.c.'>NETRC_NONE</a>;
<a id='L2429' name='L2429'></a>2429 
<a id='L2430' name='L2430'></a>2430     <strong class='reserved'>for</strong> (<a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L195' title='Defined at 195 in src/vfs/ftpfs/ftpfs.c.'>NETRC_DEFAULT</a>; <a href='../Y/keywords.html' title='Multiple used in 3 places.'>keywords</a>[<a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a> - 1] != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>; <a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a>++)
<a id='L2431' name='L2431'></a>2431         <strong class='reserved'>if</strong> (<a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (<a href='../Y/keywords.html' title='Multiple used in 3 places.'>keywords</a>[<a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a> - 1], <a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>) == 0)
<a id='L2432' name='L2432'></a>2432             <strong class='reserved'>return</strong> <a href='../Y/i.html' title='Multiple used in 2441 places.'>i</a>;
<a id='L2433' name='L2433'></a>2433 
<a id='L2434' name='L2434'></a>2434     <strong class='reserved'>return</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L202' title='Defined at 202 in src/vfs/ftpfs/ftpfs.c.'>NETRC_UNKNOWN</a>;
<a id='L2435' name='L2435'></a>2435 <em class='brace'>}</em>
<a id='L2436' name='L2436'></a>2436 
<a id='L2437' name='L2437'></a>2437 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2438' name='L2438'></a>2438 
<a id='L2439' name='L2439'></a>2439 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a>
<a id='L2440' name='L2440'></a>2440 <a href='../R/ftpfs_netrc_bad_mode.html' title='Multiple referred from 2 places.'>ftpfs_netrc_bad_mode</a> (<strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/netrcname.html' title='Multiple used in 9 places.'>netrcname</a>)
     <em class='comment'>/* <a href='#L2388'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2467'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2440 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2441' name='L2441'></a>2441 <em class='brace'>{</em>
<a id='L2442' name='L2442'></a>2442     <strong class='reserved'>struct</strong> <a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> <a href='../Y/mystat.html' title='Multiple used in 23 places.'>mystat</a>;
<a id='L2443' name='L2443'></a>2443 
<a id='L2444' name='L2444'></a>2444     <strong class='reserved'>if</strong> (<a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> (<a href='../Y/netrcname.html' title='Multiple used in 9 places.'>netrcname</a>, &amp;<a href='../Y/mystat.html' title='Multiple used in 23 places.'>mystat</a>) &gt;= 0 &amp;&amp; (<a href='../Y/mystat.html' title='Multiple used in 23 places.'>mystat</a>.<a href='../Y/st_mode.html' title='Multiple used in 244 places.'>st_mode</a> &amp; 077) != 0)
<a id='L2445' name='L2445'></a>2445     <em class='brace'>{</em>
<a id='L2446' name='L2446'></a>2446         <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/be_angry.html' title='Multiple used in 3 places.'>be_angry</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2447' name='L2447'></a>2447 
<a id='L2448' name='L2448'></a>2448         <strong class='reserved'>if</strong> (<a href='../Y/be_angry.html' title='Multiple used in 3 places.'>be_angry</a>)
<a id='L2449' name='L2449'></a>2449         <em class='brace'>{</em>
<a id='L2450' name='L2450'></a>2450             <a href='../D/message.html' title='Multiple defined in 5 places.'>message</a> (<a href='../S/lib--widget--wtools.h.html#L31' title='Defined at 31 in lib/widget/wtools.h.'>D_ERROR</a>, <a href='../S/lib--widget--wtools.h.html#L14' title='Defined at 14 in lib/widget/wtools.h.'>MSG_ERROR</a>,
<a id='L2451' name='L2451'></a>2451                      <a href='../D/_.html' title='Multiple defined in 2 places.'>_</a>("~/.netrc file has incorrect mode\nRemove password or correct mode"));
<a id='L2452' name='L2452'></a>2452             <a href='../Y/be_angry.html' title='Multiple used in 3 places.'>be_angry</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L2453' name='L2453'></a>2453         <em class='brace'>}</em>
<a id='L2454' name='L2454'></a>2454         <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2455' name='L2455'></a>2455     <em class='brace'>}</em>
<a id='L2456' name='L2456'></a>2456 
<a id='L2457' name='L2457'></a>2457     <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L2458' name='L2458'></a>2458 <em class='brace'>}</em>
<a id='L2459' name='L2459'></a>2459 
<a id='L2460' name='L2460'></a>2460 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2461' name='L2461'></a>2461 <em class='comment'>/* Scan .netrc until we find matching "machine" or "default"</em>
<a id='L2462' name='L2462'></a>2462 <em class='comment'> * domain is used for additional matching</em>
<a id='L2463' name='L2463'></a>2463 <em class='comment'> * No search is done after "default" in compliance with "man netrc"</em>
<a id='L2464' name='L2464'></a>2464 <em class='comment'> * Return TRUE if found, FALSE otherwise */</em>
<a id='L2465' name='L2465'></a>2465 
<a id='L2466' name='L2466'></a>2466 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a>
<a id='L2467' name='L2467'></a>2467 <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2581' title='Referred from 2581 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_find_machine</a> (<strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a>)
     <em class='comment'>/* <a href='#L2440'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2535'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2467 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2468' name='L2468'></a>2468 <em class='brace'>{</em>
<a id='L2469' name='L2469'></a>2469     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L203' title='Defined at 203 in src/vfs/ftpfs/ftpfs.c.'>keyword_t</a> <a href='../Y/keyword.html' title='Multiple used in 44 places.'>keyword</a>;
<a id='L2470' name='L2470'></a>2470 
<a id='L2471' name='L2471'></a>2471     <strong class='reserved'>if</strong> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2472' name='L2472'></a>2472         <a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> = "";
<a id='L2473' name='L2473'></a>2473     <strong class='reserved'>if</strong> (<a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2474' name='L2474'></a>2474         <a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a> = "";
<a id='L2475' name='L2475'></a>2475 
<a id='L2476' name='L2476'></a>2476     <strong class='reserved'>while</strong> ((<a href='../Y/keyword.html' title='Multiple used in 44 places.'>keyword</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2388' title='Defined at 2388 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_next</a> ()) != <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L194' title='Defined at 194 in src/vfs/ftpfs/ftpfs.c.'>NETRC_NONE</a>)
<a id='L2477' name='L2477'></a>2477     <em class='brace'>{</em>
<a id='L2478' name='L2478'></a>2478         <strong class='reserved'>if</strong> (<a href='../Y/keyword.html' title='Multiple used in 44 places.'>keyword</a> == <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L195' title='Defined at 195 in src/vfs/ftpfs/ftpfs.c.'>NETRC_DEFAULT</a>)
<a id='L2479' name='L2479'></a>2479             <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2480' name='L2480'></a>2480 
<a id='L2481' name='L2481'></a>2481         <strong class='reserved'>if</strong> (<a href='../Y/keyword.html' title='Multiple used in 44 places.'>keyword</a> == <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L201' title='Defined at 201 in src/vfs/ftpfs/ftpfs.c.'>NETRC_MACDEF</a>)
<a id='L2482' name='L2482'></a>2482         <em class='brace'>{</em>
<a id='L2483' name='L2483'></a>2483             <em class='comment'>/* Scan for an empty line, which concludes "macdef" */</em>
<a id='L2484' name='L2484'></a>2484             <strong class='reserved'>do</strong>
<a id='L2485' name='L2485'></a>2485             <em class='brace'>{</em>
<a id='L2486' name='L2486'></a>2486                 <strong class='reserved'>while</strong> (*<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> != '\0' &amp;&amp; *<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> != '\n')
<a id='L2487' name='L2487'></a>2487                     <a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>++;
<a id='L2488' name='L2488'></a>2488                 <strong class='reserved'>if</strong> (*<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> != '\n')
<a id='L2489' name='L2489'></a>2489                     <strong class='reserved'>break</strong>;
<a id='L2490' name='L2490'></a>2490                 <a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a>++;
<a id='L2491' name='L2491'></a>2491             <em class='brace'>}</em>
<a id='L2492' name='L2492'></a>2492             <strong class='reserved'>while</strong> (*<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> != '\0' &amp;&amp; *<a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> != '\n');
<a id='L2493' name='L2493'></a>2493 
<a id='L2494' name='L2494'></a>2494             <strong class='reserved'>continue</strong>;
<a id='L2495' name='L2495'></a>2495         <em class='brace'>}</em>
<a id='L2496' name='L2496'></a>2496 
<a id='L2497' name='L2497'></a>2497         <strong class='reserved'>if</strong> (<a href='../Y/keyword.html' title='Multiple used in 44 places.'>keyword</a> != <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L196' title='Defined at 196 in src/vfs/ftpfs/ftpfs.c.'>NETRC_MACHINE</a>)
<a id='L2498' name='L2498'></a>2498             <strong class='reserved'>continue</strong>;
<a id='L2499' name='L2499'></a>2499 
<a id='L2500' name='L2500'></a>2500         <em class='comment'>/* Take machine name */</em>
<a id='L2501' name='L2501'></a>2501         <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2388' title='Defined at 2388 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_next</a> () == <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L194' title='Defined at 194 in src/vfs/ftpfs/ftpfs.c.'>NETRC_NONE</a>)
<a id='L2502' name='L2502'></a>2502             <strong class='reserved'>break</strong>;
<a id='L2503' name='L2503'></a>2503 
<a id='L2504' name='L2504'></a>2504         <strong class='reserved'>if</strong> (<a href='../Y/g_ascii_strcasecmp.html' title='Multiple used in 16 places.'>g_ascii_strcasecmp</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>) != 0)
<a id='L2505' name='L2505'></a>2505         <em class='brace'>{</em>
<a id='L2506' name='L2506'></a>2506             <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/host_domain.html' title='Multiple used in 5 places.'>host_domain</a>;
<a id='L2507' name='L2507'></a>2507 
<a id='L2508' name='L2508'></a>2508             <em class='comment'>/* Try adding our domain to short names in .netrc */</em>
<a id='L2509' name='L2509'></a>2509             <a href='../Y/host_domain.html' title='Multiple used in 5 places.'>host_domain</a> = <a href='../D/strchr.html' title='Multiple defined in 2 places.'>strchr</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, '.');
<a id='L2510' name='L2510'></a>2510             <strong class='reserved'>if</strong> (<a href='../Y/host_domain.html' title='Multiple used in 5 places.'>host_domain</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2511' name='L2511'></a>2511                 <strong class='reserved'>continue</strong>;
<a id='L2512' name='L2512'></a>2512 
<a id='L2513' name='L2513'></a>2513             <em class='comment'>/* Compare domain part */</em>
<a id='L2514' name='L2514'></a>2514             <strong class='reserved'>if</strong> (<a href='../Y/g_ascii_strcasecmp.html' title='Multiple used in 16 places.'>g_ascii_strcasecmp</a> (<a href='../Y/host_domain.html' title='Multiple used in 5 places.'>host_domain</a>, <a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a>) != 0)
<a id='L2515' name='L2515'></a>2515                 <strong class='reserved'>continue</strong>;
<a id='L2516' name='L2516'></a>2516 
<a id='L2517' name='L2517'></a>2517             <em class='comment'>/* Compare local part */</em>
<a id='L2518' name='L2518'></a>2518             <strong class='reserved'>if</strong> (<a href='../Y/g_ascii_strncasecmp.html' title='Multiple used in 4 places.'>g_ascii_strncasecmp</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>, <a href='../Y/host_domain.html' title='Multiple used in 5 places.'>host_domain</a> - <a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>) != 0)
<a id='L2519' name='L2519'></a>2519                 <strong class='reserved'>continue</strong>;
<a id='L2520' name='L2520'></a>2520         <em class='brace'>}</em>
<a id='L2521' name='L2521'></a>2521 
<a id='L2522' name='L2522'></a>2522         <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2523' name='L2523'></a>2523     <em class='brace'>}</em>
<a id='L2524' name='L2524'></a>2524 
<a id='L2525' name='L2525'></a>2525     <em class='comment'>/* end of .netrc */</em>
<a id='L2526' name='L2526'></a>2526     <strong class='reserved'>return</strong> <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L2527' name='L2527'></a>2527 <em class='brace'>}</em>
<a id='L2528' name='L2528'></a>2528 
<a id='L2529' name='L2529'></a>2529 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2530' name='L2530'></a>2530 <em class='comment'>/* Extract login and password from .netrc for the host.</em>
<a id='L2531' name='L2531'></a>2531 <em class='comment'> * pass may be NULL.</em>
<a id='L2532' name='L2532'></a>2532 <em class='comment'> * Returns TRUE for success, FALSE for error */</em>
<a id='L2533' name='L2533'></a>2533 
<a id='L2534' name='L2534'></a>2534 <strong class='reserved'>static</strong> <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a>
<a id='L2535' name='L2535'></a>2535 <a href='../R/ftpfs_netrc_lookup.html' title='Multiple referred from 3 places.'>ftpfs_netrc_lookup</a> (<strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <strong class='reserved'>char</strong> **<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a>, <strong class='reserved'>char</strong> **<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a>)
     <em class='comment'>/* <a href='#L2467'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2677'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2535 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2536' name='L2536'></a>2536 <em class='brace'>{</em>
<a id='L2537' name='L2537'></a>2537     <strong class='reserved'>char</strong> *<a href='../Y/netrcname.html' title='Multiple used in 9 places.'>netrcname</a>;
<a id='L2538' name='L2538'></a>2538     <strong class='reserved'>char</strong> *<a href='../Y/tmp_pass.html' title='Multiple used in 5 places.'>tmp_pass</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>;
<a id='L2539' name='L2539'></a>2539     <strong class='reserved'>char</strong> <a href='../Y/hostname.html' title='Multiple used in 18 places.'>hostname</a>[<a href='../D/MAXHOSTNAMELEN.html' title='Multiple defined in 2 places.'>MAXHOSTNAMELEN</a>];
<a id='L2540' name='L2540'></a>2540     <strong class='reserved'>const</strong> <strong class='reserved'>char</strong> *<a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a>;
<a id='L2541' name='L2541'></a>2541     <strong class='reserved'>static</strong> <strong class='reserved'>struct</strong> <a href='../R/rupcache.html' title='Multiple referred from 2 places.'>rupcache</a>
<a id='L2542' name='L2542'></a>2542     <em class='brace'>{</em>
<a id='L2543' name='L2543'></a>2543         <strong class='reserved'>struct</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2541' title='Defined at 2541 in src/vfs/ftpfs/ftpfs.c.'>rupcache</a> *<a href='../Y/next.html' title='Multiple used in 271 places.'>next</a>;
<a id='L2544' name='L2544'></a>2544         <strong class='reserved'>char</strong> *<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>;
<a id='L2545' name='L2545'></a>2545         <strong class='reserved'>char</strong> *<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a>;
<a id='L2546' name='L2546'></a>2546         <strong class='reserved'>char</strong> *<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a>;
<a id='L2547' name='L2547'></a>2547     <em class='brace'>}</em> *<a href='../Y/rup_cache.html' title='Multiple used in 4 places.'>rup_cache</a> = <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, *<a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a>;
<a id='L2548' name='L2548'></a>2548 
<a id='L2549' name='L2549'></a>2549     <em class='comment'>/* Initialize *login and *pass */</em>
<a id='L2550' name='L2550'></a>2550     <a href='../S/lib--util.h.html#L25' title='Defined at 25 in lib/util.h.'>MC_PTR_FREE</a> (*<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a>);
<a id='L2551' name='L2551'></a>2551     <a href='../S/lib--util.h.html#L25' title='Defined at 25 in lib/util.h.'>MC_PTR_FREE</a> (*<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a>);
<a id='L2552' name='L2552'></a>2552 
<a id='L2553' name='L2553'></a>2553     <em class='comment'>/* Look up in the cache first */</em>
<a id='L2554' name='L2554'></a>2554     <strong class='reserved'>for</strong> (<a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a> = <a href='../Y/rup_cache.html' title='Multiple used in 4 places.'>rup_cache</a>; <a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>; <a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a> = <a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a>-&gt;<a href='../Y/next.html' title='Multiple used in 271 places.'>next</a>)
<a id='L2555' name='L2555'></a>2555         <strong class='reserved'>if</strong> (<a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>) == 0)
<a id='L2556' name='L2556'></a>2556         <em class='brace'>{</em>
<a id='L2557' name='L2557'></a>2557             *<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a>-&gt;<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a>);
<a id='L2558' name='L2558'></a>2558             *<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a>-&gt;<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a>);
<a id='L2559' name='L2559'></a>2559             <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2560' name='L2560'></a>2560         <em class='brace'>}</em>
<a id='L2561' name='L2561'></a>2561 
<a id='L2562' name='L2562'></a>2562     <em class='comment'>/* Load current .netrc */</em>
<a id='L2563' name='L2563'></a>2563     <a href='../Y/netrcname.html' title='Multiple used in 9 places.'>netrcname</a> = <a href='../Y/g_build_filename.html' title='Multiple used in 43 places.'>g_build_filename</a> (<a href='../D/mc_config_get_home_dir.html' title='Multiple defined in 4 places.'>mc_config_get_home_dir</a> (), ".netrc", (<strong class='reserved'>char</strong> *) <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>);
<a id='L2564' name='L2564'></a>2564     <strong class='reserved'>if</strong> (!<a href='../Y/g_file_get_contents.html' title='Multiple used in 12 places.'>g_file_get_contents</a> (<a href='../Y/netrcname.html' title='Multiple used in 9 places.'>netrcname</a>, &amp;<a href='../Y/netrc.html' title='Multiple used in 4 places.'>netrc</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>, <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>))
<a id='L2565' name='L2565'></a>2565     <em class='brace'>{</em>
<a id='L2566' name='L2566'></a>2566         <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/netrcname.html' title='Multiple used in 9 places.'>netrcname</a>);
<a id='L2567' name='L2567'></a>2567         <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2568' name='L2568'></a>2568     <em class='brace'>}</em>
<a id='L2569' name='L2569'></a>2569 
<a id='L2570' name='L2570'></a>2570     <a href='../Y/netrcp.html' title='Multiple used in 20 places.'>netrcp</a> = <a href='../Y/netrc.html' title='Multiple used in 4 places.'>netrc</a>;
<a id='L2571' name='L2571'></a>2571 
<a id='L2572' name='L2572'></a>2572     <em class='comment'>/* Find our own domain name */</em>
<a id='L2573' name='L2573'></a>2573     <strong class='reserved'>if</strong> (<a href='../Y/gethostname.html' title='Multiple used in 7 places.'>gethostname</a> (<a href='../Y/hostname.html' title='Multiple used in 18 places.'>hostname</a>, <strong class='reserved'>sizeof</strong> (<a href='../Y/hostname.html' title='Multiple used in 18 places.'>hostname</a>)) &lt; 0)
<a id='L2574' name='L2574'></a>2574         *<a href='../Y/hostname.html' title='Multiple used in 18 places.'>hostname</a> = '\0';
<a id='L2575' name='L2575'></a>2575 
<a id='L2576' name='L2576'></a>2576     <a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a> = <a href='../D/strchr.html' title='Multiple defined in 2 places.'>strchr</a> (<a href='../Y/hostname.html' title='Multiple used in 18 places.'>hostname</a>, '.');
<a id='L2577' name='L2577'></a>2577     <strong class='reserved'>if</strong> (<a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2578' name='L2578'></a>2578         <a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a> = "";
<a id='L2579' name='L2579'></a>2579 
<a id='L2580' name='L2580'></a>2580     <em class='comment'>/* Scan for "default" and matching "machine" keywords */</em>
<a id='L2581' name='L2581'></a>2581     <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2467' title='Defined at 2467 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_find_machine</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>, <a href='../Y/domain.html' title='Multiple used in 51 places.'>domain</a>);
<a id='L2582' name='L2582'></a>2582 
<a id='L2583' name='L2583'></a>2583     <em class='comment'>/* Scan for keywords following "default" and "machine" */</em>
<a id='L2584' name='L2584'></a>2584     <strong class='reserved'>while</strong> (<a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>)
<a id='L2585' name='L2585'></a>2585     <em class='brace'>{</em>
<a id='L2586' name='L2586'></a>2586         <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L203' title='Defined at 203 in src/vfs/ftpfs/ftpfs.c.'>keyword_t</a> <a href='../Y/keyword.html' title='Multiple used in 44 places.'>keyword</a>;
<a id='L2587' name='L2587'></a>2587 
<a id='L2588' name='L2588'></a>2588         <a href='../Y/gboolean.html' title='Multiple used in 1757 places.'>gboolean</a> <a href='../Y/need_break.html' title='Multiple used in 8 places.'>need_break</a> = <a href='../Y/FALSE.html' title='Multiple used in 1594 places.'>FALSE</a>;
<a id='L2589' name='L2589'></a>2589         <a href='../Y/keyword.html' title='Multiple used in 44 places.'>keyword</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2388' title='Defined at 2388 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_next</a> ();
<a id='L2590' name='L2590'></a>2590 
<a id='L2591' name='L2591'></a>2591         <strong class='reserved'>switch</strong> (<a href='../Y/keyword.html' title='Multiple used in 44 places.'>keyword</a>)
<a id='L2592' name='L2592'></a>2592         <em class='brace'>{</em>
<a id='L2593' name='L2593'></a>2593         <strong class='reserved'>case</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L197' title='Defined at 197 in src/vfs/ftpfs/ftpfs.c.'>NETRC_LOGIN</a>:
<a id='L2594' name='L2594'></a>2594             <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2388' title='Defined at 2388 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_next</a> () == <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L194' title='Defined at 194 in src/vfs/ftpfs/ftpfs.c.'>NETRC_NONE</a>)
<a id='L2595' name='L2595'></a>2595             <em class='brace'>{</em>
<a id='L2596' name='L2596'></a>2596                 <a href='../Y/need_break.html' title='Multiple used in 8 places.'>need_break</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2597' name='L2597'></a>2597                 <strong class='reserved'>break</strong>;
<a id='L2598' name='L2598'></a>2598             <em class='brace'>}</em>
<a id='L2599' name='L2599'></a>2599 
<a id='L2600' name='L2600'></a>2600             <em class='comment'>/* We have another name already - should not happen */</em>
<a id='L2601' name='L2601'></a>2601             <strong class='reserved'>if</strong> (*<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2602' name='L2602'></a>2602             <em class='brace'>{</em>
<a id='L2603' name='L2603'></a>2603                 <a href='../Y/need_break.html' title='Multiple used in 8 places.'>need_break</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2604' name='L2604'></a>2604                 <strong class='reserved'>break</strong>;
<a id='L2605' name='L2605'></a>2605             <em class='brace'>}</em>
<a id='L2606' name='L2606'></a>2606 
<a id='L2607' name='L2607'></a>2607             <em class='comment'>/* We have login name now */</em>
<a id='L2608' name='L2608'></a>2608             *<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>);
<a id='L2609' name='L2609'></a>2609             <strong class='reserved'>break</strong>;
<a id='L2610' name='L2610'></a>2610 
<a id='L2611' name='L2611'></a>2611         <strong class='reserved'>case</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L198' title='Defined at 198 in src/vfs/ftpfs/ftpfs.c.'>NETRC_PASSWORD</a>:
<a id='L2612' name='L2612'></a>2612         <strong class='reserved'>case</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L199' title='Defined at 199 in src/vfs/ftpfs/ftpfs.c.'>NETRC_PASSWD</a>:
<a id='L2613' name='L2613'></a>2613             <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2388' title='Defined at 2388 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_next</a> () == <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L194' title='Defined at 194 in src/vfs/ftpfs/ftpfs.c.'>NETRC_NONE</a>)
<a id='L2614' name='L2614'></a>2614             <em class='brace'>{</em>
<a id='L2615' name='L2615'></a>2615                 <a href='../Y/need_break.html' title='Multiple used in 8 places.'>need_break</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2616' name='L2616'></a>2616                 <strong class='reserved'>break</strong>;
<a id='L2617' name='L2617'></a>2617             <em class='brace'>}</em>
<a id='L2618' name='L2618'></a>2618 
<a id='L2619' name='L2619'></a>2619             <em class='comment'>/* Ignore unsafe passwords */</em>
<a id='L2620' name='L2620'></a>2620             <strong class='reserved'>if</strong> (*<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a> != <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a> &amp;&amp;
<a id='L2621' name='L2621'></a>2621                 <a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (*<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a>, "anonymous") != 0 &amp;&amp; <a href='../Y/strcmp.html' title='Multiple used in 249 places.'>strcmp</a> (*<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a>, "ftp") != 0
<a id='L2622' name='L2622'></a>2622                 &amp;&amp; <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2440' title='Defined at 2440 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_bad_mode</a> (<a href='../Y/netrcname.html' title='Multiple used in 9 places.'>netrcname</a>))
<a id='L2623' name='L2623'></a>2623             <em class='brace'>{</em>
<a id='L2624' name='L2624'></a>2624                 <a href='../Y/need_break.html' title='Multiple used in 8 places.'>need_break</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2625' name='L2625'></a>2625                 <strong class='reserved'>break</strong>;
<a id='L2626' name='L2626'></a>2626             <em class='brace'>}</em>
<a id='L2627' name='L2627'></a>2627 
<a id='L2628' name='L2628'></a>2628             <em class='comment'>/* Remember password.  pass may be NULL, so use tmp_pass */</em>
<a id='L2629' name='L2629'></a>2629             <strong class='reserved'>if</strong> (<a href='../Y/tmp_pass.html' title='Multiple used in 5 places.'>tmp_pass</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2630' name='L2630'></a>2630                 <a href='../Y/tmp_pass.html' title='Multiple used in 5 places.'>tmp_pass</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/buffer.html' title='Multiple used in 1012 places.'>buffer</a>);
<a id='L2631' name='L2631'></a>2631             <strong class='reserved'>break</strong>;
<a id='L2632' name='L2632'></a>2632 
<a id='L2633' name='L2633'></a>2633         <strong class='reserved'>case</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L200' title='Defined at 200 in src/vfs/ftpfs/ftpfs.c.'>NETRC_ACCOUNT</a>:
<a id='L2634' name='L2634'></a>2634             <em class='comment'>/* "account" is followed by a token which we ignore */</em>
<a id='L2635' name='L2635'></a>2635             <strong class='reserved'>if</strong> (<a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2388' title='Defined at 2388 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_next</a> () == <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L194' title='Defined at 194 in src/vfs/ftpfs/ftpfs.c.'>NETRC_NONE</a>)
<a id='L2636' name='L2636'></a>2636             <em class='brace'>{</em>
<a id='L2637' name='L2637'></a>2637                 <a href='../Y/need_break.html' title='Multiple used in 8 places.'>need_break</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2638' name='L2638'></a>2638                 <strong class='reserved'>break</strong>;
<a id='L2639' name='L2639'></a>2639             <em class='brace'>}</em>
<a id='L2640' name='L2640'></a>2640 
<a id='L2641' name='L2641'></a>2641             <em class='comment'>/* Ignore account, but warn user anyways */</em>
<a id='L2642' name='L2642'></a>2642             <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2440' title='Defined at 2440 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_netrc_bad_mode</a> (<a href='../Y/netrcname.html' title='Multiple used in 9 places.'>netrcname</a>);
<a id='L2643' name='L2643'></a>2643             <strong class='reserved'>break</strong>;
<a id='L2644' name='L2644'></a>2644 
<a id='L2645' name='L2645'></a>2645         <strong class='reserved'>default</strong>:
<a id='L2646' name='L2646'></a>2646             <em class='comment'>/* Unexpected keyword or end of file */</em>
<a id='L2647' name='L2647'></a>2647             <a href='../Y/need_break.html' title='Multiple used in 8 places.'>need_break</a> = <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2648' name='L2648'></a>2648             <strong class='reserved'>break</strong>;
<a id='L2649' name='L2649'></a>2649         <em class='brace'>}</em>
<a id='L2650' name='L2650'></a>2650 
<a id='L2651' name='L2651'></a>2651         <strong class='reserved'>if</strong> (<a href='../Y/need_break.html' title='Multiple used in 8 places.'>need_break</a>)
<a id='L2652' name='L2652'></a>2652             <strong class='reserved'>break</strong>;
<a id='L2653' name='L2653'></a>2653     <em class='brace'>}</em>
<a id='L2654' name='L2654'></a>2654 
<a id='L2655' name='L2655'></a>2655     <a href='../S/lib--util.h.html#L25' title='Defined at 25 in lib/util.h.'>MC_PTR_FREE</a> (<a href='../Y/netrc.html' title='Multiple used in 4 places.'>netrc</a>);
<a id='L2656' name='L2656'></a>2656     <a href='../Y/g_free.html' title='Multiple used in 1230 places.'>g_free</a> (<a href='../Y/netrcname.html' title='Multiple used in 9 places.'>netrcname</a>);
<a id='L2657' name='L2657'></a>2657 
<a id='L2658' name='L2658'></a>2658     <a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a> = <a href='../Y/g_new.html' title='Multiple used in 66 places.'>g_new</a> (<strong class='reserved'>struct</strong> <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2541' title='Defined at 2541 in src/vfs/ftpfs/ftpfs.c.'>rupcache</a>, 1);
<a id='L2659' name='L2659'></a>2659     <a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a>-&gt;<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/host.html' title='Multiple used in 152 places.'>host</a>);
<a id='L2660' name='L2660'></a>2660     <a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a>-&gt;<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (*<a href='../Y/login.html' title='Multiple used in 22 places.'>login</a>);
<a id='L2661' name='L2661'></a>2661     <a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a>-&gt;<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> (<a href='../Y/tmp_pass.html' title='Multiple used in 5 places.'>tmp_pass</a>);
<a id='L2662' name='L2662'></a>2662 
<a id='L2663' name='L2663'></a>2663     <a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a>-&gt;<a href='../Y/next.html' title='Multiple used in 271 places.'>next</a> = <a href='../Y/rup_cache.html' title='Multiple used in 4 places.'>rup_cache</a>;
<a id='L2664' name='L2664'></a>2664     <a href='../Y/rup_cache.html' title='Multiple used in 4 places.'>rup_cache</a> = <a href='../Y/rupp.html' title='Multiple used in 11 places.'>rupp</a>;
<a id='L2665' name='L2665'></a>2665 
<a id='L2666' name='L2666'></a>2666     *<a href='../Y/pass.html' title='Multiple used in 50 places.'>pass</a> = <a href='../Y/tmp_pass.html' title='Multiple used in 5 places.'>tmp_pass</a>;
<a id='L2667' name='L2667'></a>2667 
<a id='L2668' name='L2668'></a>2668     <strong class='reserved'>return</strong> <a href='../Y/TRUE.html' title='Multiple used in 1520 places.'>TRUE</a>;
<a id='L2669' name='L2669'></a>2669 <em class='brace'>}</em>
<a id='L2670' name='L2670'></a>2670 
<a id='L2671' name='L2671'></a>2671 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2672' name='L2672'></a>2672 <em class='comment'>/*** public functions ****************************************************************************/</em>
<a id='L2673' name='L2673'></a>2673 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2674' name='L2674'></a>2674 
<a id='L2675' name='L2675'></a>2675 <em class='comment'>/** This routine is called as the last step in load_setup */</em>
<a id='L2676' name='L2676'></a>2676 <strong class='reserved'>void</strong>
<a id='L2677' name='L2677'></a>2677 <a href='../R/ftpfs_init_passwd.html' title='Multiple referred from 3 places.'>ftpfs_init_passwd</a> (<strong class='reserved'>void</strong>)
     <em class='comment'>/* <a href='#L2535'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><a href='#L2698'><img class='icon' src='../icons/right.png' alt='[next]' /></a><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2677 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2678' name='L2678'></a>2678 <em class='brace'>{</em>
<a id='L2679' name='L2679'></a>2679     <a href='../Y/ftpfs_anonymous_passwd.html' title='Multiple used in 12 places.'>ftpfs_anonymous_passwd</a> = <a href='../S/src--setup.c.html#L1324' title='Defined at 1324 in src/setup.c.'>load_anon_passwd</a> ();
<a id='L2680' name='L2680'></a>2680 
<a id='L2681' name='L2681'></a>2681     <strong class='reserved'>if</strong> (<a href='../Y/ftpfs_anonymous_passwd.html' title='Multiple used in 12 places.'>ftpfs_anonymous_passwd</a> == <a href='../Y/NULL.html' title='Multiple used in 5646 places.'>NULL</a>)
<a id='L2682' name='L2682'></a>2682     <em class='brace'>{</em>
<a id='L2683' name='L2683'></a>2683         <em class='comment'>/* If there is no anonymous ftp password specified</em>
<a id='L2684' name='L2684'></a>2684 <em class='comment'>         * then we'll just use anonymous@</em>
<a id='L2685' name='L2685'></a>2685 <em class='comment'>         * We don't send any other thing because:</em>
<a id='L2686' name='L2686'></a>2686 <em class='comment'>         * - We want to remain anonymous</em>
<a id='L2687' name='L2687'></a>2687 <em class='comment'>         * - We want to stop SPAM</em>
<a id='L2688' name='L2688'></a>2688 <em class='comment'>         * - We don't want to let ftp sites to discriminate by the user,</em>
<a id='L2689' name='L2689'></a>2689 <em class='comment'>         *   host or country.</em>
<a id='L2690' name='L2690'></a>2690 <em class='comment'>         */</em>
<a id='L2691' name='L2691'></a>2691         <a href='../Y/ftpfs_anonymous_passwd.html' title='Multiple used in 12 places.'>ftpfs_anonymous_passwd</a> = <a href='../Y/g_strdup.html' title='Multiple used in 444 places.'>g_strdup</a> ("anonymous@");
<a id='L2692' name='L2692'></a>2692     <em class='brace'>}</em>
<a id='L2693' name='L2693'></a>2693 <em class='brace'>}</em>
<a id='L2694' name='L2694'></a>2694 
<a id='L2695' name='L2695'></a>2695 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
<a id='L2696' name='L2696'></a>2696 
<a id='L2697' name='L2697'></a>2697 <strong class='reserved'>void</strong>
<a id='L2698' name='L2698'></a>2698 <a href='../R/vfs_init_ftpfs.html' title='Multiple referred from 2 places.'>vfs_init_ftpfs</a> (<strong class='reserved'>void</strong>)
     <em class='comment'>/* <a href='#L2677'><img class='icon' src='../icons/left.png' alt='[previous]' /></a><img class='icon' src='../icons/n_right.png' alt='[next]' /><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><img class='icon' src='../icons/n_last.png' alt='[last]' /><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><a href='#BOTTOM'><img class='icon' src='../icons/bottom.png' alt='[bottom]' /></a><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2698 src/vfs/ftpfs/ftpfs.c'  /> */</em>
<a id='L2699' name='L2699'></a>2699 <em class='brace'>{</em>
<a id='L2700' name='L2700'></a>2700     <a href='../S/lib--vfs--netutil.c.html#L63' title='Defined at 63 in lib/vfs/netutil.c.'>tcp_init</a> ();
<a id='L2701' name='L2701'></a>2701 
<a id='L2702' name='L2702'></a>2702     <a href='../S/lib--vfs--direntry.c.html#L1551' title='Defined at 1551 in lib/vfs/direntry.c.'>vfs_init_subclass</a> (&amp;<a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>, "ftpfs", <a href='../S/lib--vfs--vfs.h.html#L115' title='Defined at 115 in lib/vfs/vfs.h.'>VFSF_NOLINKS</a> | <a href='../S/lib--vfs--vfs.h.html#L117' title='Defined at 117 in lib/vfs/vfs.h.'>VFSF_REMOTE</a> | <a href='../S/lib--vfs--vfs.h.html#L119' title='Defined at 119 in lib/vfs/vfs.h.'>VFSF_USETMP</a>, "ftp");
<a id='L2703' name='L2703'></a>2703     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/done.html' title='Multiple used in 52 places.'>done</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2356' title='Defined at 2356 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_done</a>;
<a id='L2704' name='L2704'></a>2704     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/fill_names.html' title='Multiple used in 10 places.'>fill_names</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2369' title='Defined at 2369 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_fill_names</a>;
<a id='L2705' name='L2705'></a>2705     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/stat.html' title='Multiple used in 258 places.'>stat</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2095' title='Defined at 2095 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_stat</a>;
<a id='L2706' name='L2706'></a>2706     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/lstat.html' title='Multiple used in 19 places.'>lstat</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2107' title='Defined at 2107 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_lstat</a>;
<a id='L2707' name='L2707'></a>2707     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/fstat.html' title='Multiple used in 20 places.'>fstat</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2119' title='Defined at 2119 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_fstat</a>;
<a id='L2708' name='L2708'></a>2708     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/chmod.html' title='Multiple used in 18 places.'>chmod</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2131' title='Defined at 2131 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_chmod</a>;
<a id='L2709' name='L2709'></a>2709     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/chown.html' title='Multiple used in 12 places.'>chown</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2144' title='Defined at 2144 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_chown</a>;
<a id='L2710' name='L2710'></a>2710     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/unlink.html' title='Multiple used in 25 places.'>unlink</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2166' title='Defined at 2166 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_unlink</a>;
<a id='L2711' name='L2711'></a>2711     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/rename.html' title='Multiple used in 10 places.'>rename</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2213' title='Defined at 2213 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_rename</a>;
<a id='L2712' name='L2712'></a>2712     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/mkdir.html' title='Multiple used in 13 places.'>mkdir</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2222' title='Defined at 2222 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_mkdir</a>;
<a id='L2713' name='L2713'></a>2713     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/rmdir.html' title='Multiple used in 9 places.'>rmdir</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2232' title='Defined at 2232 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_rmdir</a>;
<a id='L2714' name='L2714'></a>2714     <a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>-&gt;<a href='../Y/ctl.html' title='Multiple used in 4 places.'>ctl</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2034' title='Defined at 2034 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_ctl</a>;
<a id='L2715' name='L2715'></a>2715     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/archive_same.html' title='Multiple used in 9 places.'>archive_same</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1034' title='Defined at 1034 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_archive_same</a>;
<a id='L2716' name='L2716'></a>2716     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/new_archive.html' title='Multiple used in 8 places.'>new_archive</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L566' title='Defined at 566 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_new_archive</a>;
<a id='L2717' name='L2717'></a>2717     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/open_archive.html' title='Multiple used in 9 places.'>open_archive</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1017' title='Defined at 1017 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_open_archive</a>;
<a id='L2718' name='L2718'></a>2718     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/free_archive.html' title='Multiple used in 8 places.'>free_archive</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L584' title='Defined at 584 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_free_archive</a>;
<a id='L2719' name='L2719'></a>2719     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/fh_new.html' title='Multiple used in 6 places.'>fh_new</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2240' title='Defined at 2240 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_fh_new</a>;
<a id='L2720' name='L2720'></a>2720     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/fh_open.html' title='Multiple used in 6 places.'>fh_open</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2254' title='Defined at 2254 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_fh_open</a>;
<a id='L2721' name='L2721'></a>2721     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/fh_close.html' title='Multiple used in 4 places.'>fh_close</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2332' title='Defined at 2332 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_fh_close</a>;
<a id='L2722' name='L2722'></a>2722     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/dir_load.html' title='Multiple used in 5 places.'>dir_load</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1726' title='Defined at 1726 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_dir_load</a>;
<a id='L2723' name='L2723'></a>2723     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/file_store.html' title='Multiple used in 5 places.'>file_store</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1865' title='Defined at 1865 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_file_store</a>;
<a id='L2724' name='L2724'></a>2724     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/linear_start.html' title='Multiple used in 6 places.'>linear_start</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1972' title='Defined at 1972 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_linear_start</a>;
<a id='L2725' name='L2725'></a>2725     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/linear_read.html' title='Multiple used in 5 places.'>linear_read</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L1995' title='Defined at 1995 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_linear_read</a>;
<a id='L2726' name='L2726'></a>2726     <a href='../Y/ftpfs_subclass.html' title='Multiple used in 15 places.'>ftpfs_subclass</a>.<a href='../Y/linear_close.html' title='Multiple used in 6 places.'>linear_close</a> = <a href='../S/src--vfs--ftpfs--ftpfs.c.html#L2025' title='Defined at 2025 in src/vfs/ftpfs/ftpfs.c.'>ftpfs_linear_close</a>;
<a id='L2727' name='L2727'></a>2727     <a href='../S/lib--vfs--vfs.c.html#L308' title='Defined at 308 in lib/vfs/vfs.c.'>vfs_register_class</a> (<a href='../Y/vfs_ftpfs_ops.html' title='Multiple used in 15 places.'>vfs_ftpfs_ops</a>);
<a id='L2728' name='L2728'></a>2728 <em class='brace'>}</em>
<a id='L2729' name='L2729'></a>2729 
<a id='L2730' name='L2730'></a>2730 <em class='comment'>/* --------------------------------------------------------------------------------------------- */</em>
</pre>
<hr />
<a id='BOTTOM' name='BOTTOM'></a>
<em class='comment'>/* <img class='icon' src='../icons/n_left.png' alt='[previous]' /><img class='icon' src='../icons/n_right.png' alt='[next]' /><a href='#L278'><img class='icon' src='../icons/first.png' alt='[first]' /></a><a href='#L2698'><img class='icon' src='../icons/last.png' alt='[last]' /></a><a href='#TOP'><img class='icon' src='../icons/top.png' alt='[top]' /></a><img class='icon' src='../icons/n_bottom.png' alt='[bottom]' /><a href='../mains.html'><img class='icon' src='../icons/index.png' alt='[index]' /></a><a href='../help.html'><img class='icon' src='../icons/help.png' alt='[help]' /></a>&nbsp;<input type='text' readonly onfocus='this.select();' value='+2730 src/vfs/ftpfs/ftpfs.c'  /> */</em>
</body>
</html>
